액셀에서 매크로는 아주 편리한 기능을 합니다.
거기다 VB 언어로 되어있어 프로그래밍도 가능하죠.
매크로로 2개의 셀을 자동으로 병합해 주는 기능을 만들어볼까 합니다.
아래 그림과 같이 셀이 준비 되어있다고 할때,
기존에는 2개의 셀을 선택한 다음에 마우스 클릭으로 병합을 일일이 해 줘야 하는데요
한, 두개면 상관 없지만 이게 몇 십개 몇 백개라면 문제가 됩니다. 시간이 오래걸리죠.
이 작업을 매크로로 하게 되면 쉽게 처리할 수 있습니다.
우선 매크로를 기록해야 합니다.
보기 탭의 매크로를 눌러보면 메뉴가 나오는데 거기서 매크로 기록을 누르세요.
병합 작업을 쉽게 하기 위해서는 단축키가 필수인데요.
단축키는 알아서 편리한 단축키로 설정하세요.
저는 CTRL+Q로 지정하였습니다.
단축키 지정이 끝나고 확인을 눌렀으면 이제 그냥 매크로 기록 중지하세요.
매크로 내용은 직접 넣을테니까요.
매크로 기록이 중지 되었으니 이제 편집을 해야죠.
편집하기 전에 매크로 보기를 해야 합니다.
매크로 목록이 나오면 "편집" 버튼을 누릅니다.
매크로를 편집할 수 있는 비쥬얼베이직 창이 실행되는데요...
여기다가 아래 코드를 넣으면 끝입니다. 소스는 아래에 있으니 복사해서 붙여넣기 하세요.
소스를 모두 붙여 넣었으면 이제 테스트 해봐야겠죠.
A의 1번 셀을 선택하고 단축키(저는 CTRL+Q)를 눌러봅니다.
아주 잘 실행되서 병합이 한방에 되었습니다.
B번 셀도 해보고, C번 셀도 해봤습니다.
모두 병합되었네요.
아래의 소스코드를 적당하게 복사해서 비쥬얼 베이직프로그램 창(매크로 편집 창)에 붙여넣으세요.
Sub 매크로1() ' ' 매크로1 매크로 ' ' 바로 가기 키: Ctrl+q ' On Error Resume Next CurRow = ActiveCell.Row CurCol = ActiveCell.Column ' 병합할 셀의 내용을 지워야 확인창이 안뜬다. ' 한 셀의 내용이 지워진다라는 내용의 확인창. Cells(CurRow + 1, CurCol).Value = "" ' 현재 셀과 다음 셀을 선택한다. Range(Cells(CurRow, CurCol), Cells(CurRow + 1, CurCol)).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With Selection.Merge End Sub
'나는 컴쟁이다~!' 카테고리의 다른 글
USB 2.0 Hub 장치 인식 안 될때 조치 방법 (매우 간단) (1) | 2014.09.21 |
---|---|
ffdshow MPEG4(H264) 인코딩 되는 마지막 버전 REV 3665 (0) | 2014.09.05 |
좋은 이미지 뷰어 프로그램 소개합니다. (JPEGView) (0) | 2014.07.10 |
구글 드라이브(구글 닥스)를 이용해서 파일 공유하기(대용량 파일 15G까지 가능) (0) | 2014.06.18 |
[스크랩] 블로그(티스토리)에 소스 코드 삽입(하이라이트) Syntax Highlighter (0) | 2014.04.29 |