Option Explicit
Sub CopyFormulasByCondition_Column()
'★★횡방향 : 상단 비목 중 '금액' 열들에 소집계 수식 붙여넣기★★
Dim rng As Range
Dim firstRowNum As Long
Dim lastRowNum As Long
Dim colNum As Long
Dim colLetter As String
Dim ws As Worksheet
Dim lastCol As Long
Dim col As Long
Set ws = ActiveSheet
'현재 선택된 영역
Set rng = Selection
'선택 영역의 첫 번째 열 번호
colNum = rng.Column
'첫 번째 행 번호
firstRowNum = rng.Rows(1).Row
'마지막 행 번호
lastRowNum = rng.Rows(rng.Rows.Count).Row
'7행의 마지막 열 찾기
lastCol = ws.Cells(7, ws.Columns.Count).End(xlToLeft).Column
'7행 전체를 순회
For col = 1 To lastCol
If ws.Cells(7, col).Value = "금액" Then
'해당 열의 106행, 107행 수식 복사 상대주소로 붙여넣기
ws.Cells(firstRowNum, col).FormulaR1C1 = _
ws.Cells(firstRowNum, colNum).FormulaR1C1
ws.Cells(lastRowNum, col).FormulaR1C1 = _
ws.Cells(lastRowNum, colNum).FormulaR1C1
End If
Next col
End Sub
Sub CopyFormulasByCondition_Row()
'★★종방향 : 잔여 수량집계 수식 붙여넣기★★
Dim rng As Range
Dim firstRowNum As Long
Dim lastRowNum As Long
Dim nRow As Long
Dim colNum As Long
Dim ws As Worksheet
Set ws = ActiveSheet
'현재 선택된 영역
Set rng = Selection
'선택 영역의 첫 번째 열 번호
colNum = ActiveCell.Column
'첫 번째 행 번호
firstRowNum = rng.Rows(1).Row
'마지막 행 번호
lastRowNum = rng.Rows(rng.Rows.Count).Row
'행 전체를 순회
For nRow = firstRowNum To lastRowNum Step 2
'해당 열의 106행, 107행 수식 복사 상대주소로 붙여넣기
ws.Cells(nRow + 1, colNum).FormulaR1C1 = _
ws.Cells(firstRowNum + 1, colNum).FormulaR1C1
Next nRow
End Sub
Sub GetActiveCellColumnLetter()
'★★현재 셀의 열 문자★★
Dim colLetter As String
colLetter = Split(Cells(1, ActiveCell.Column).Address(True, False), "$")(0)
MsgBox "현재 셀의 열 문자는 " & colLetter & " 입니다."
End Sub
'내역관련 > 내역자료' 카테고리의 다른 글
| 지정영역 내에서 일정 간격으로 2행 삽입 및 삭제 (0) | 2026.04.21 |
|---|---|
| 지정영역 내에서 일정 간격으로 1행 삽입 및 삭제 (0) | 2026.04.20 |
| 자동필터 지정 및 해제 (0) | 2026.03.26 |
| 노란색을 무색으로 변경, PDF 출판 후 원상복구 (0) | 2026.01.22 |
| 설계변경 세줄 내역 (0) | 2022.10.21 |