지식은 공유되었을 때 그 힘을 발휘한다.



Excel VBA, AutoCAD ActiveX 맛보기 강좌(25)

Excel에서 사용자 툴바 포함된 xla파일 만들기

한동안 강좌를 쉬었습니다. 한동안이 아니고 거의 1년도 넘은 듯^^ 여러분도 아시다시피 구조설계라는 것이 워낙 시간싸움이라서...
오늘은 Excel에서 툴바를 만드는 법을 이야기 해보겠습니다. 다들 Excel용 VBA를 만들어놓고 다른사람에게 배포해서 공유하고 싶은데 방법을 잘 모르겠다고 하시는 분들이 종종 있어서요. 남들과 공유하고자하는 마음은 참 아름답습니다. 그래서 그런 분들을 위해서 특강(?)을 마음먹게 되었습니다. 알고 나면 별건 아니지만 모를땐 참 답답하죠.

우선 Excel을 띄우고 보기/도구모음/사용자 정을 메뉴를 선택하면 아래와 같은 박스가 뜹니다.

새로운 툴바뿐만 아니라 Excel에서 기본으로 제공하는 툴바들도 모두 자기 입맛에 맞게 고쳐쓸 수 있게 해주는 부분입니다.
새로운 툴바를 만들기 위해서 새로만들기버튼을 누릅니다. 그러면 아래와 같은 창이 뜨면서 새로운 툴바의 이름을 물어봅니다. 알맞는 이름으로 입력하면 되겠죠?

그러면 이제 새툴바가 하나 생기게 됩니다. 아래와 같이 아주 조그많게요.

아직은 안에 아무버튼도 없습니다. 그냥 비어있는 빈 껍데기 툴바입니다. 여기서 잠깐 툴바와 버튼의 차이는 대부분 아시리라 생각되는데, 확인을 위해서.. 툴바는 버튼의 모임입니다. 툴바와 버튼을 착각하시는 분들이 있는데 꼭 알아두세요. 버튼의 묶음이 툴바라는 것을. 지금까지는 툴바를 만든 것이고 툴바 안에 버튼을 추가해야겠지요?


이제 아래와 같이 툴바하나가 추가되었습니다. 그럼 닫기 버튼을 누르고 툴바편집을 끝내고 테스트를 해보도록 하겠습니다.

새로만든 툴바 안에 있는 열기 버튼을 눌러보세요. 어떤가요? 열기창이 뜹니다. 눈치 빠른 분들은 알아채셨을 것입니다. 툴바 편집기능은 자신이 만든 매크로를 연결하는 것뿐만 아니라 사용자가 자주사용하는 명령들을 한데 모아 자신만의 툴바로 만들어서 사용할 수 있다는 것을...
그렇다면 이제 본격적으로 자신이 만든 버튼을 추가해보도록 하겠습니다. 기존 명령을 추가하는 테스트를 해본 이유는 파일/보기 등의 범주에 있는 명령들과 자신이 직접 만든 매크로를 위한 툴바는 엄연히 구분된다는 것을 보여드리기 위한 것이었습니다.
자신이 만든 명령을 연결해서 사용할 툴바를 만들기 위해서는 매크로 범주를 선택하면 아래 그림과 같이 됩니다. 오른쪽 명령 항을 보면 딱 두개의 명령이 있습니다. 이중에서 사용자 정의 단추명령을 드래그 앤 드롭으로 자신의 툴바에 추가해줍니다. 웃는 얼굴.. 어디서 많이 보던 얼굴이죠?

이제 자신을 위한 툴바에 웃는 얼굴의 버튼이 하나 가 추가 되었습니다. 툴바 구성은 완료됬고 이제 버튼을 수정할 차례입니다. 웃는 낯에 침 못뱄는다고 하지만 웃는 모든 버튼을 웃는 얼굴로 할 수는 없습니다. 웃는 얼굴을 과감하게 지우고 다른 모양으로 바꾸기도 해야하고, 자신이 만든 매크로에 연결도 해야됩니다. 우선 추가된 버튼을 오른쪽마우스로 클릭해보시기 바랍니다. 툴바 수정메뉴들이 보입니다. 아래와 같이요.

여러가지 메뉴가 있는데 다른 것들은 시간 날때 한번씩 눌러보면.. 아~ 이런거구나 하고 알 수 있는 것들이고 우리가 당장 알고 싶은건 "단추모양편집"하고 매크로 지정입니다. 우선 "단추모양 편집"을 눌러보면 아래와 같이 단추모양을 편집할 수 있는 창이 뜹니다.

웃는 얼굴을 슥슥 지우고.. 다른 모양으로 만들어보죠. 저는 아래처럼 톨아진 얼굴로 고쳐봤습니다.

고치기가 끝나면 확인버튼을 눌러 수정을 끄내고 다시 버튼을 오른쪽버튼으로 클릭해서 "매크로 지정"메뉴를 선택합니다. 아래와 같이 매크로를 지정할 수 있는 창이 뜹니다. 지금은 이 xls파일안에 만들어진 매크로가 없기 때문에 아무 매크로도 안보이지만 매크로가 있는 경우 목록이 나오고 연결하고 싶은 매크로를 클릭하고 확인을 누르면 매크로 지정까지 끝나게 됩니다.

매크로 지정이 끝난 상태에서 화면을 보면 아래아 같이 새로 추가된 버튼에 네모가 쳐져있는 것을 발견할 수 있습니다. 이것은 현재 편집중이라는 뜻입니다. 사용자정의 창의 오른쪽 아래 있는 닫기 버튼을 눌르면 사용자 정의가 끝나게 되고 툴바를 사용하능하게 됩니다. 그럼 내일 계속하도록 하겠습니다.

이제 자신의 툴바 만들기는 끝났습니다. 여기까지는 다 아는 거라구요? 정작 궁금한건 이 툴바를 다른 사람들도 쓸 수 있게 만드는 거라구요? ^^ 잠깐만 기다리세요. 지금 그부분을 설명하려하고 있습니다.
Excel에서 만든 툴바를 다른 컴에서 사용하기 위해서는 그 xls파일에 저장을 해버리면 됩니다. 그러면 즉 툴바설정은 xls파일에 같이 저장된다는 것입니다. 물론 xls파일뿐 아니라 추가기능 파일인 xla파일에도 저장이 되는거죠. xla파일은 xls와 같은 구조이고 추가기능이라는 것을 표현하기 위해서 xl에 add가 붙은 겁니다. 그럼 xls파일이나 xla파일에 툴바를 저장하는 방법은 어떻게 될까요? 생각보다 아주 간단합니다. 제가 초창기에 [다정다감] for Excel을 만들었을 때는 버튼 이미지를 xls파일 쉬트에 포함시켜서 VBA로 불러오는 방법을 사용했는데 그건 아주 구식방법이 되어버렸습니다. 2000에서부터는 아예 툴바를 xls에 포함시킬 수 있기 때문입니다. 알고나면 정말 허탈한 너무나 간단한 방법.. 설명해보겠습니다.
보기/도구모음/사용자정의 를 들어가면 오른쪽 아래에 첨부라는 버튼이 있습니다. 이버튼을 클릭하면 아래오른쪽 그림과 같은 창이뜹니다.
  
이 창은 현재 Excel에서 지원하는 툴바를 제외한 새로운 툴바들을 왼쪽 창에 보여주고 이 파일과 함께 저장할 툴바를 선택할 수 있습니다. 왼쪽에 "DJDG"와 방금 만든 "사용자정의1"이라는 툴바를 볼수 있습니다. 이중 "사용자정의1"을 선태하고 복사버튼을 누르면 오른쪽에 등록됩니다. 오른쪽에 등록된 툴바들만 현재의 파일과 함께 저장이 됩니다. 확인 버튼을 누르고 파일을 저장하면 어떤 컴퓨터에서 이 파일을 열때 "사용자 정의1"이라는 툴바가 뜨고 그 안에 "톨아진 얼굴"버튼을 발견할 수 있을 것입니다.
이제 툴바를 포함시키는 것 까지 끝났습니다. 내친 김에 xla파일로 만드는 법도 이야기해보겠습니다. 어차피 xls형식으로 공유하는 것보다는 xla형식으로 공유하는것이 깔끔하겠죠? xla형식으로 만드는 건 설명드릴 것도 없습니다. ^^ 아래 그림처럼 파일메뉴에서 "다른이름으로 저장"을 선택한 다음에 파일형식을 "Microsoft Excel 추가기능"으로 선택하면 디렉터리가 Windows/Application data/Microsoft/addins로 바뀝니다. 저장버튼을 누르면 xla만들기도끝~ 입니다.

어떤가요 알고 보니까 정말 아무것도 아니죠? ^^ 그럼 좋은 날 되시길.....



dolljong@dreamwiz.com