엑셀 중급_VBA 와 매크로 (8)

엑셀 매크로는 만든 사람도 사용하기 쉬워야 하지만 파일을 공유할 경우 엑셀 워크시트를 사용하는 누구라도 쉽게 이용 할 수 있어야 합니다. 내가 만든 매크로라면 단축키를 알고 기능을 아는 것이 당연하지만 처음 파일을 열어 본 사람은 매크로가 어떤 기능인지도 모르는 사람도 많습니다. 이럴 때는 워크시트에 매크로 버튼을 만들어 두면 굉장히 직관적으로 사용 할 수 있게 해줍니다. 파일을 열어 본 누구라도 "글자체 강조" 이런 버튼을 본다면 어떤 기능인지 알 수 있지 않겠어요?

08연습파일.xlsx

08연습파일_완성본.xlsm

  1. 매크로 기록 하기

    매크로를 기록하는 여러 가지 방법을 소개 했지만 필자가 가장 좋아하는 방법은 역시 작업 표시줄을 이용하는 것 입니다. 작업 표시줄로 값으로 변환하는 간단한 매크로를 만들어 보겠습니다.

     

    지금 B열은 UPPER함수로 모든 문자를 대문자로 바꾼 함수의 리턴 값 입니다. 이 상태에서 매크로 녹화 버튼을 누릅니다.

     

     

    매크로 이름을 정하고 현재 통합 문서에 저장을 해 보겠습니다.

     

     

    이후의 모든 마우스 클릭은 기록이 됩니다. 컨트롤 C를 이용하여 복사를 하고 같은 자리에 마우스 우클릭을 한 후 붙여 넣기 옵션에서 값을 선택 합니다. 여기서 절대 다른 컨트롤은 하지 않은 상태로 상태 표시줄의 녹화 중지 버튼을 누릅니다.

     

     

    이제 선택 영역이 값으로 바뀌었고 매크로는 저장 되었습니다.

     

  2. 매크로 버튼 삽입하기

    매크로 버튼은 엑셀에서의 어떤 개체에라도 넣을 수 있습니다. 지금은 도형으로 예제를 보여 드리지만 또 다른 개체인 사진에도 같은 방법으로 매크로 버튼으로 변환 하실 수 있습니다.

     

    삽입 탭의 도형을 클릭 하셔서 내가 버튼으로 만들고 싶은 적당한 도형을 선택합니다.

     

     

    이 엑셀 파일을 열었을 때 누구라도 쉽게 알 수 있도록 매크로의 이름을 정해 줍니다.

     

     

    도형을 마우스 우 클릭을 한 후 매크로 지정을 클릭 합니다.

     

     

    내가 저장한 매크로를 선택하고 확인을 누릅니다.

     

  3. 버튼을 이용해 매크로 실행하기

    제가 붙여 넣기를 한 후 절대 다른 곳을 클릭하지 말라고 한 건 마우스 클릭도 녹화가 되어 버리기 때문입니다. 만약 녹화 정지 전에 B2셀을 클릭을 하였다고 하면 매크로를 실행하면 항상 나의 커서는 B2에 위치하게 됩니다. 값으로 바꾼 그 위치에 그대로 위치 하려면 값으로 붙여 넣고 아무 행동도 취하지 않아야 합니다.

     

    지금 F열은 LOWER함수로 모두 소문자로 바뀐 함수의 리턴 값 입니다. 선택을 하고 버튼을 눌러 보겠습니다.

     

     

    값으로 바뀌면서 매크로 녹화 정지 직전의 상태, 즉 값으로 붙여 넣기 한 상태가 표시 됩니다. 이제 함수가 아닌 완전한 값 입니다.

     

     

    옆의 G열도 PROPER함수로 영문 이름의 표준 형태로 바뀐 함수 값입니다.

     

     

    버튼을 누르면 선택된 모든 영역만 값으로 즉각 변환 됩니다.

     

    버튼을 만드는 경우는 나도 활용 할 수도 있지만 주로 엑셀을 잘 모르는 누군가와 공유를 할 경우도 있습니다. 이때 매크로를 공유 하고 싶다면 반드시 매크로가 포함된 엑셀 파일 형식으로 저장해야 하며 그냥 보통 파일로 저장을 하게 되면 매크로는 모두 제거 됩니다.

     

    다른 이름으로 저장 시 반드시 XLSM파일 형식으로 저장을 하셔야 파일에 매크로가 포함 됩니다.

     

    VBA코딩을 하시려면 많은 경험이 필요하지만 이렇게 매크로 기능을 이용하면 아무리 초보라도 손쉽게 간편한 매크로 기능을 포함 할 수 있고 또 버튼을 만들어 공유 할 수도 있습니다. 직장 상사에게 매크로 버튼을 넣은 엑셀 파일을 공유해 보세요.


+ Recent posts