저는 오늘이 며칠인지 잊고 산지가 꽤 오래됐어요. 늘 시계나 폰, PC 등에서 그때그때 확인을 하고 있습니다.
문서 작성 시에 문서 작성일 입력이 요청될 수 있는데요, 저는 오늘이 며칠인지도 헷갈리고, 영문 문서의 경우 월은 Jan, Feb 등 8월쯤 되면 Aug인가 Oct 인가 헷갈리기도 하고요 ㅎㅎㅎ 또 영문 문서면 날짜를 먼저 적을지, 월을 먼저 적을지 매번 고민됩니다.
업무 시 쓸데없는 고민을 하지 않기 위해 저는 [오늘 날짜]를 매크로로 만들어 자동 입력하고 있습니다!
기본 기능
매크로를 만들기 위해 우선 워드의 기본 기능으로 오늘 날짜를 입력해보도록 해봐요.
- [머리글 편집] 모드에 들어갑니다.
- 그럼 메뉴가 [머리글 및 바닥글] 메뉴로 자동으로 전환됩니다.
- [날짜 및 시간]을 클릭합니다.
- 언어 선택 후 필요한 날짜 형식을 선택하고 확인을 누릅니다.
※ 한국어냐 영어냐에 따라 추천 형식이 다르게 표시되므로 언어를 먼저 선택한 후 마음에 드시는 포맷을 선택하시면 되겠습니다.
매크로 기록
VBA를 모르는 분들도 매크로 기록을 통해 간단히 반복 업무를 매크로로 작성할 수 있습니다. [매크로 기록]을 실행하고 위에 알려드린 절차대로 진행해 봅니다. 한국어의 추천 형식 중에 다음 세 가지 형식을 입력해 보았습니다.
※ 매크로 기록 방법 : 개발 도구 → 맨 좌측에 [매크로 기록] → 매크로 이름 변경 또는 표시된 대로 [확인]
- 2020-09-03
- 2020년 9월 3일
- 2020/9/3
매크로 기록 결과는 다음과 같습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
Sub Macro1()
Selection.InsertDateTime DateTimeFormat:="yyyy-MM-dd", InsertAsField:= _
False, DateLanguage:=wdKorean, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
Selection.InsertDateTime DateTimeFormat:="yyyy년 M월 d일", InsertAsField:= _
False, DateLanguage:=wdKorean, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
Selection.InsertDateTime DateTimeFormat:="yyyy/M/d", InsertAsField:=False, _
DateLanguage:=wdKorean, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
End Sub
|
cs |
이번에는 영어 형식도 기록해봅니다.
- 9/3/2020
- 3-Sep-20
- 3 September 2020
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
Sub Macro2()
Selection.InsertDateTime DateTimeFormat:="M/d/yyyy", InsertAsField:=False, _
DateLanguage:=wdEnglishUS, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
Selection.InsertDateTime DateTimeFormat:="d-MMM-yy", InsertAsField:=False, _
DateLanguage:=wdEnglishUS, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
Selection.InsertDateTime DateTimeFormat:="d MMMM yyyy", InsertAsField:= _
False, DateLanguage:=wdEnglishUS, CalendarType:=wdCalendarWestern, _
InsertAsFullWidth:=False
End Sub
|
cs |
대충 감이 오시나요?
노란색으로 표시된 부분만 내가 의도한 포맷으로 지정을 해주면 되는 것 같군요.
※ 언어 관련, 달력 타입 관련 부분도 코드에 포함돼 있긴 하지만 삭제해도 동일하게 작동하였습니다. 즉, [DateLanguage:=wdEnglishUS, CalendarType:=wdCalendarWestern, ] 부분은 삭제해도 됩니다.
날짜 형식에 대한 VBA 코드
날짜 포맷에 대한 코드만 정리해보았습니다.
표시 | VBA 코드 |
2020-09-03 | "yyyy-MM-dd" |
2020년 9월 3일 | "yyyy년 M월 d일" |
2020/9/3 | "yyyy/M/d" |
9/3/2020 | "M/d/yyyy" |
3-Sep-20 |
"d-MMM-yy" |
3 September 2020 | "d MMMM yyyy" |
대시(-)나 슬래쉬(/), 년, 월, 일 등 모두 입력한 대로 표시되고, 년/월/일에 해당하는 숫자나 영어 표기는 결국 다음과 같은 규칙을 가지고 있습니다. 따라서 잘 조합하시면 원하시는 형식으로 매크로를 수정하실 수 있는 거예요.
항목 | 예시 | VBA 코드 |
년도 표시 | 2020 | yyyy |
20 | yy | |
월 표시 | 09 | MM |
9 | M | |
Sep | MMM | |
September | MMMM | |
일 표시 | 03 | dd |
3 | d |
응용해 봅시다!
예를 들어, 03 Sep. 2020으로 표시하고 싶다면 날짜 포맷 코드는 어떻게 될까요?
정답은 "dd MMM. yyyy"가 되겠죠!
전체 코드는 다음과 같습니다.
1
2
3
4
5
6
7
8
|
Sub Macro3()
Selection.InsertDateTime DateTimeFormat:="dd MMM. yyyy", InsertAsField:= _
False, InsertAsFullWidth:=False
End Sub
|
cs |
매크로로 하면 이런 좋은 점이!
기본 기능은 머리글 편집 등에서만 기능이 활성화가 되지만, 매크로는 문서의 어느 곳이든 바로 적용을 할 수 있습니다.
관련 글
매크로를 작성했다면 사용하는 것도 더 편리하면 좋을 것 같습니다.
매크로 실행을 편리하게 하는 법은 다음 포스팅을 참고해주세요. 두 번의 클릭을 한 번으로 줄여준답니다.
그리고 매크로 기능 사용을 위한 개발 도구 활성화하는 법은 다음 포스팅을 참고해주세요.
이상입니다.
'MS 오피스 팁 > Word' 카테고리의 다른 글
[Word] 매크로 보기를 빠른 실행 도구에 추가 (0) | 2020.09.04 |
---|---|
[Word] 매크로 사용을 위한 개발도구 활성화 (0) | 2020.09.04 |
[Word] 워드 - 문서 제목 삽입 (필드) (0) | 2020.06.04 |
[Word] 워드 MERGEFORMAT 너 뭐니? (0) | 2020.05.27 |
[Word] 워드 현재 페이지 번호와 전체 페이지 번호 표시 (0) | 2020.05.26 |
댓글