페이지의 일부 셀에 특정 수정을 수행하는 코드가 있습니다. 엑셀 파일의 모든 페이지에 한 번의 클릭으로 이 코드를 적용하고 싶습니다. 저는 VBA를 사용하고 있으며 초보자입니다. 내 코드는 다음과 같습니다.
Sub H() Dim B As Range, H As Range, I As Range For Each B In Range("B7:B49").Cells If IsNumeric(B) And B <> "" Then Cells(B.Row, 9) = Trim(Cells(B.Row + 1, 8)) & Trim(Cells(B.Row + 2, 8)) Cells(B.Row + 1, 8) = "" Cells(B.Row + 2, 8) = "" If B.Row > 50 Then Exit For End If Next B End Sub
위의 매크로를 엑셀 시트의 모든 페이지에 적용하고 싶습니다. 어떻게 해야 합니까?
답변1
범위의 셀을 반복하는 것과 같은 방식으로 시트(페이지)를 반복하면 됩니다.
Sub H()
Dim B As Range
For S in Sheets
For Each B In S.Range("B7:B49").Cells
If IsNumeric(B) And B <> "" Then
Cells(B.Row, 9) = Trim(Cells(B.Row + 1, 8)) & Trim(Cells(B.Row + 2, 8))
Cells(B.Row + 1, 8) = ""
Cells(B.Row + 2, 8) = ""
End If
If B.Row > 50 Then Exit For
Next B
Next S
End Sub
추신: 아마도 두 If
진술을 독립적으로 두는 것이 더 합리적일 것입니다. 즉, 두 번째 것을 첫 번째 것 안에 중첩시키지 마십시오.