Vba:날짜를 주 번호로 변환하는 방법
VBA에서 다음 기본 구문을 사용하여 날짜를 주로 변환할 수 있습니다.
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i))
Next i
End Sub
이 특정 예에서는 A2:A9 범위에서 각 날짜의 주 번호를 찾고 B2:B9 범위에 결과를 표시합니다.
VBA WeekNum 방법은 주가 일요일에 시작한다고 가정합니다.
다른 요일을 한 주의 시작으로 지정하려면 WeekNum 메서드에 두 번째 인수를 추가하면 됩니다.
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i), vbMonday)
Next i
End Sub
다음 예제에서는 WeekNum 메서드를 사용하여 실제로 날짜를 주로 변환하는 방법을 보여줍니다.
예: VBA에서 날짜를 주 번호로 변환
Excel에 다음과 같은 날짜 열이 있다고 가정합니다.
각 날짜를 주 번호로 변환하고 B 열에 주 번호를 표시한다고 가정합니다.
이를 위해 다음 매크로를 생성할 수 있습니다:
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i))
Next i
End Sub
이 매크로를 실행하면 다음과 같은 출력이 나타납니다.
B열에는 A열의 각 날짜에 대한 주 번호가 표시되며, 주가 일요일에 시작된다고 가정합니다.
한 주의 시작 날짜를 다른 날로 지정하려면(예: 월요일) 다음 구문을 사용할 수 있습니다.
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i), vbMonday)
Next i
End Sub
이 매크로를 실행하면 다음과 같은 출력이 나타납니다.
이제 주가 월요일에 시작한다고 가정하면 B열에는 B열의 각 날짜에 대한 주 번호가 표시됩니다.
참고 : VBA WeekNum 방법에 대한 전체 설명서는 여기에서 찾을 수 있습니다.
추가 리소스
다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA에서 날짜를 비교하는 방법
VBA에서 문자열을 날짜로 변환하는 방법
VBA에서 두 날짜 사이의 일수를 계산하는 방법