Vba : 날짜로부터 월과 연도를 얻는 방법
VBA에서 NumberFormat 속성을 사용하여 날짜에서 월과 연도를 가져올 수 있습니다.
실제로 이 속성을 사용하는 일반적인 방법은 다음과 같습니다.
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " mm/yyyy "
Next i
End Sub
이 특정 매크로는 A2:A11 범위에 있는 각 날짜의 월과 연도를 찾고 C2:C11 범위에 있는 해당 셀에 이 값을 표시합니다.
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: VBA에서 오늘에 일 추가
서로 다른 날짜에 회사의 매출에 대한 정보가 포함된 다음과 같은 데이터 세트가 Excel에 있다고 가정합니다.
날짜 열의 각 셀에 대한 월과 연도를 얻고 싶다고 가정해 보겠습니다.
이를 위해 다음 매크로를 생성할 수 있습니다:
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " mm/yyyy "
Next i
End Sub
이 매크로를 실행하면 다음과 같은 출력이 나타납니다.
C 열에는 A 열에 해당하는 각 날짜의 월과 연도가 포함되어 있습니다.
NumberFormat 속성을 사용하여 월은 두 자리, 연도는 네 자리로 날짜 형식을 지정했습니다.
원하는 경우 이러한 값을 다른 형식으로 표시하도록 선택할 수 있습니다.
예를 들어, 다음 구문을 사용하여 월을 한 자리(월에 한 자리만 포함하는 경우)로 표시하고 연도를 두 자리로 표시할 수 있습니다.
SubGetMonthYear ()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = DateValue(Range(" A " & i))
Range(" C " & i).NumberFormat = " m/yy "
Next i
End Sub
이 매크로를 실행하면 다음과 같은 출력이 나타납니다.
원하는 대로 월 및 연도 값을 표시하기 위해 다양한 형식 옵션을 자유롭게 사용해 보세요.
추가 리소스
다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA에서 날짜를 비교하는 방법
VBA에서 문자열을 날짜로 변환하는 방법
VBA에서 두 날짜 사이의 일수를 계산하는 방법