서론: "이걸 또 하고 있네..." 지겨운 반복 작업과의 작별 인사
회사원, 특히 공무원이나 공공기관에 종사하는 분들이라면 '아래아한글(HWP)'은 떼려야 뗄 수 없는 업무 도구일 겁니다. 보고서 작성부터 공문 처리까지, 하루에도 몇 시간씩 한글 문서와 씨름하곤 하죠.
문서를 편집하다 보면 놀라울 정도로 반복적인 작업에 시간을 쏟는 자신을 발견하게 됩니다. 특정 문구를 찾아 스타일을 바꾸거나, 여러 페이지에 걸쳐 표 서식을 통일하거나, 줄 끝에 애매하게 걸린 글자 하나를 올리기 위해 자간을 줄이는 작업들... 매번 똑같은 순서로 마우스를 클릭하고 단축키를 누르는 일, 솔직히 지겹지 않으신가요?
엑셀의 매크로나 VBA는 많은 분이 알고 계시지만, 정작 매일 사용하는 아래아한글에도 강력한 '스크립트 매크로' 기능이 있다는 사실은 잘 알려져 있지 않습니다. 이 기능을 활용하면, 방금 언급한 모든 반복 작업을 단축키 하나로 순식간에 처리할 수 있습니다.
이번 포스트에서는 한글 매크로의 기초부터 간단한 응용까지, 차근차근 알아보겠습니다. 코딩을 전혀 몰라도 괜찮습니다. 여러분의 '칼퇴'를 앞당겨 줄 비장의 무기, 지금부터 함께 만들어볼까요?
1단계: 매크로 사용을 위한 사전 준비 (보안 설정 변경)
본격적으로 매크로를 만들기 전에, 딱 한 번만 해주면 되는 설정이 있습니다. 바로 '매크로 보안 설정'을 변경하는 것입니다. 한글은 악성 스크립트로부터 사용자를 보호하기 위해 기본적으로 매크로 실행을 제한하고 있습니다. 우리가 직접 만든 안전한 매크로를 사용하기 위해 이 제한을 풀어주어야 합니다.
- 아래아한글을 실행하고, 상단 메뉴에서 [도구] 탭을 클릭합니다.
- 메뉴가 펼쳐지면 [스크립트 매크로]를 클릭합니다.
- 하위 메뉴에서 [매크로 보안 설정]을 선택합니다.
- '보안 수준' 팝업창이 나타나면 [낮음(권장하지 않음): 모든 매크로를 제한 없이 실행함]을 선택하고 [설정] 버튼을 누릅니다.
⚠️ 잠깐! 보안 수준을 '낮음'으로 설정하는 이유
'권장하지 않음'이라는 문구 때문에 걱정하실 수 있습니다. 이 설정은 인터넷에서 출처를 알 수 없는 한글 파일을 열 때, 그 안에 숨겨진 악성 매크로가 자동으로 실행되는 것을 방지하기 위한 안전장치입니다. 우리는 직접 만들고 내용을 확인한 매크로만 사용할 것이므로, 이 설정을 변경해도 괜찮습니다. 하지만 이메일 등으로 받은 의심스러운 한글 파일을 열 때는 주의하는 것이 좋습니다.
이제 매크로를 만들고 실행할 모든 준비가 끝났습니다.
2단계: 내 생의 첫 매크로 만들기 (실용 예제: 자간 조절 자동화)
가장 간단하면서도, 문서 작업 시 가장 빈번하게 마주치는 상황을 매크로로 해결해 보겠습니다. 바로 줄바꿈 때문에 다음 줄로 넘어간 글자 한두 개를 위로 끌어올리는 작업입니다.
보통 이런 경우, 해당 줄을 마우스로 드래그(블록 지정)하고 자간 줄임 단축키인 Alt
+ Shift
+ N
을 여러 번 눌러서 글자를 올리곤 합니다. 이 간단하지만 은근히 귀찮은 과정을 매크로로 기록해 보겠습니다.
매크로 기록 시작하기
- 상단 메뉴에서 [도구] → [스크립트 매크로] → [매크로 정의]를 클릭합니다. (단축키:
Alt
+Shift
+H
) - '매크로 정의' 창이 나타납니다. 왼쪽에는 이미 만들어진 기본 매크로 목록이 보입니다. 우리는 새로운 매크로를 만들 것이므로, 하단의 [+] 버튼(새 매크로 추가)을 클릭합니다.
- '새 매크로' 항목이 생성되면, 원하는 이름을 입력합니다. 여기서는 "자간3번줄이기"라고 입력해 보겠습니다.
- 오른쪽 '단축키' 섹션에서 이 매크로를 실행할 단축키를 지정합니다.
Alt
+Shift
조합을 사용하는 것이 기존 단축키와 겹칠 확률이 적습니다. 여기서는Alt
+Shift
+J
를 지정해 보겠습니다. - [정의] 버튼을 누릅니다.
이제 화면이 바뀌면서 매크로 기록이 시작됩니다. 마우스 커서 모양이 카세트테이프 아이콘으로 바뀌고, 화면 하단 상태 표시줄에 [매크로 기록 중지] 버튼이 나타난 것을 확인할 수 있습니다.
중요: 지금부터 [매크로 기록 중지] 버튼을 누르기 전까지 키보드와 마우스로 하는 모든 동작이 순서대로 기록됩니다.
자동화할 동작 수행하기
우리가 자동화하려는 동작은 다음과 같습니다.
"현재 커서가 있는 줄 전체의 자간을 3번 줄인다."
이 동작을 키보드로만 정확하게 수행해 봅시다.
Home
키를 눌러 커서를 줄의 맨 앞으로 이동합니다.Shift
+End
키를 눌러 줄의 맨 끝까지 블록으로 지정합니다.- 자간 줄임 단축키인
Alt
+Shift
+N
을 세 번 누릅니다. (땅! 땅! 땅!) Home
키를 다시 눌러 블록 지정을 해제하고 커서를 줄 맨 앞으로 돌려놓습니다. (다음 작업을 위해 커서 위치를 초기화하는 좋은 습관입니다.)
매크로 기록 완료 및 테스트
모든 동작을 수행했다면, 화면 하단의 [매크로 기록 중지] 버튼(네모 모양 아이콘)을 클릭합니다.
이것으로 첫 매크로 만들기가 끝났습니다! 정말 간단하죠?
이제 테스트해 볼 차례입니다. 아까처럼 줄 끝에 글자 한두 개가 다음 줄로 넘어간 곳에 커서를 두고, 우리가 지정했던 단축키 Alt
+ Shift
+ J
를 눌러보세요.
실행 전:
... 문서의 가독성을 해치는 경우가 많습니다. 이럴
때
Alt
+ Shift
+ J
실행 후:
... 문서의 가독성을 해치는 경우가 많습니다. 이럴 때
놀랍게도, 방금 우리가 순서대로 눌렀던 모든 키보드 동작이 한 번에 실행되면서 글자가 위로 착 달라붙는 것을 볼 수 있습니다.
3단계: 레벨 업! 매크로 코드 직접 수정하기
"기록만으로도 충분한데, 굳이 코드를 봐야 하나요?"라고 생각하실 수 있습니다. 하지만 아주 약간의 코드 수정만으로 매크로의 활용도를 몇 배는 더 높일 수 있습니다. 프로그래밍 지식은 전혀 필요 없으니 겁먹지 마세요!
기록된 스크립트 확인하기
- 상단 메뉴에서 [도구] → [스크립트 매크로] → [매크로 실행]을 클릭합니다. (단축키:
Alt
+Shift
+L
) - '매크로 실행' 창이 나타나면, 방금 우리가 만든 "자간3번줄이기" 매크로를 선택합니다.
- 오른쪽의 [스크립트 편집기] 버튼을 클릭합니다.
화면 오른쪽에 코드가 적힌 '스크립트 편집기' 창이 나타납니다. 아마 다음과 비슷한 내용이 보일 겁니다. (내용은 약간 다를 수 있습니다.)
// 자간3번줄이기
function OnScriptMacro_자간3번줄이기()
{
HAction.Run("MoveLineBegin");
HAction.Run("SelectLine");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("MoveLineBegin");
}
코드를 전혀 몰라도, HAction.Run("명령어")
형태가 "어떤 동작을 실행하라"는 뜻이라는 걸 짐작할 수 있습니다.
MoveLineBegin
: 줄 맨 앞으로 이동 (Home
키)SelectLine
: 한 줄 선택 (Shift
+End
와 유사)CharShapeSpacingDecrease
: 자간 줄이기 (Alt
+Shift
+N
)
코드 수정으로 기능 강화하기
예제 1: 자간을 3번이 아니라 6번 줄이고 싶다면?
매번 Alt
+Shift
+N
을 6번 누르는 매크로를 새로 녹화할 필요가 없습니다. 그냥 코드 편집기에서 HAction.Run("CharShapeSpacingDecrease");
이 줄을 복사해서 3줄 더 붙여넣으면 됩니다.
수정 후 코드:
// ... (이전 내용 생략)
HAction.Run("SelectLine");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease"); // 추가
HAction.Run("CharShapeSpacingDecrease"); // 추가
HAction.Run("CharShapeSpacingDecrease"); // 추가
HAction.Run("MoveLineBegin");
}
수정이 끝났으면, 스크립트 편집기 상단의 [적용] 버튼(디스켓 모양 아이콘)을 반드시 눌러서 변경 사항을 저장해야 합니다. 이제 단축키를 실행하면 자간이 6단계나 줄어들어, 더 많은 글자를 위로 올릴 수 있게 됩니다.
예제 2: 한 줄 자간을 줄이고, 자동으로 다음 줄로 이동하기
여러 줄에 걸쳐 이 작업을 반복해야 할 때 유용한 기능입니다. 마지막의 MoveLineBegin
(줄 처음으로 가기) 대신 MoveDown
(아래로 한 줄 이동) 명령어로 바꿔주면 됩니다.
수정 후 코드:
// ... (이전 내용 생략)
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("CharShapeSpacingDecrease");
HAction.Run("MoveDown"); // MoveLineBegin을 MoveDown으로 변경
}
[적용] 버튼을 누르고 단축키를 실행해 보세요. 한 줄의 자간을 줄인 뒤, 커서가 바로 다음 줄로 이동하여 또다시 단축키를 누를 준비를 합니다. 따닥, 따닥, 따닥
하고 키를 연타하면 여러 줄을 순식간에 정리할 수 있습니다.
4단계: 상상력을 발휘하라! 매크로 활용 아이디어
우리가 배운 것은 아주 기본적인 예시일 뿐입니다. 한글 매크로는 여러분이 상상하는 거의 모든 반복 작업을 자동화할 수 있습니다. 몇 가지 아이디어를 더 드릴 테니, 여러분의 업무에 맞게 응용해 보세요.
- 표 서식 통일 매크로:
- 동작: 현재 표 안에 커서를 두고 → 표 전체 선택 → 테두리 종류/굵기 변경 → 첫 행 배경색 지정 → 전체 셀 안쪽 여백 조절
- 효과: 수십 페이지에 걸친 보고서의 모든 표 스타일을 단 몇 초 만에 통일할 수 있습니다.
- 특정 글자 스타일 변경 매크로:
- 동작:
Ctrl
+F
찾기 실행 → 특정 단어(예: "중요", "참고") 입력 → 모두 찾기 → 글자 모양 변경(빨간색, 굵게) - 효과: 문서 전체에서 강조하고 싶은 키워드를 일괄적으로 눈에 띄게 만들 수 있습니다.
- 동작:
- 기관명/직인 삽입 매크로:
- 동작: 문서 맨 끝으로 이동 → 정해진 문구(예: "○○○장 (인)") 입력 → 미리 저장해둔 직인 이미지 삽입
- 효과: 공문 등을 작성할 때마다 반복적으로 입력하는 마무리 작업을 자동화합니다.
- '맞춤법 검사 후 저장' 매크로:
- 동작: 맞춤법 검사기 실행(
F8
) → 파일 저장(Alt
+S
) - 효과: 문서를 저장하기 전에 항상 맞춤법을 검사하는 습관을 만들어 실수를 줄여줍니다.
- 동작: 맞춤법 검사기 실행(
이 모든 것은 [매크로 정의] 기능을 통해 여러분의 실제 작업 순서를 그대로 '녹화'하기만 하면 만들 수 있습니다.
결론: 당신의 업무 시간을 되찾아 줄 최고의 조수
처음에는 매크로를 설정하고 기록하는 과정이 조금 낯설고 번거롭게 느껴질 수 있습니다. 하지만 딱 10분만 투자해서 자주 쓰는 매크로 한두 개만 만들어 두면, 앞으로 몇 시간, 혹은 몇십 시간의 단순 반복 작업을 아낄 수 있습니다.
코드를 직접 작성할 필요 없이, 그저 평소 하던 작업을 한번 '기록'하기만 하면 된다는 점이 한글 스크립트 매크로의 가장 큰 매력입니다.
이제 "이 단순 작업은 언제 다 하지?"라는 한숨 대신, "어떤 작업을 자동화해볼까?"라는 즐거운 고민을 해보세요. 한글 매크로는 여러분의 업무 효율을 극적으로 높여주고, 창의적인 일에 더 집중할 시간을 선물해 줄 최고의 조수가 될 것입니다.
이 글은 아래 글을 바탕으로 GEMINI를 이용해 재작성한 것입니다.
한글 문서 편집, 자동화 할 수 없을까?(한글매크로)
서론 회사원이라면 아래아한글을 사용해 문서를 편집하는 경우가 많을 것이다. 특히 공무원 또는 공공기관 직원이라면 워드를 사용하는 경우는 거의 없고 대부분의 문서를 아래아한글로 작성
codealone.tistory.com
'GEMINI 활용' 카테고리의 다른 글
나만의 개발 환경을 USB에 통째로! 리눅스 민트 부팅 USB 만들기 (A to Z 가이드) (9) | 2025.07.31 |
---|---|
[VS Code 완벽 가이드] 파이썬(Python) 코드, 한 줄씩 실행하며 스마트하게 개발하기 (3) | 2025.07.31 |
[완벽 가이드] 안드로이드 스마트폰에서 PC처럼 Git 사용하기 (Termux 활용) (3) | 2025.07.31 |
한글 완벽 정복: 전체 쪽수 표시부터 스타일 변경까지, 쪽 번호 마스터하기 (2) | 2025.07.31 |
내 윈도우 노트북(인텔 GPU)에서 AI와 대화하기: Ollama와 IPEX-LLM으로 로컬 LLM 완벽 가이드 (4) | 2025.07.31 |
댓글