Excel에서 VBA 매크로 또는 스크립트를 만드는 방법

Microsoft Excel 을 사용하면 매크로와 (Microsoft Excel)VBA ( Visual Basic for Applications ) 스크립팅 을 사용하여 기능과 명령을 자동화할 수 있습니다 . VBA는 Excel 에서 매크로를 만드는 데 사용 하는 프로그래밍 언어 입니다. (VBA is the programming language Excel)또한 특정 조건에 따라 자동화된 명령을 실행합니다.

매크로는 미리 기록된 일련의 명령입니다. 특정 명령이 주어지면 자동으로 실행됩니다. 회계, 프로젝트 관리 또는 급여와 같이 Microsoft Excel 에서 반복적으로 수행하는 작업이 있는 경우 이러한 프로세스를 자동화하면 많은 시간을 절약할 수 있습니다.

Excel 의 (Excel)리본(Ribbon) 에 있는 개발 도구(Developer) 탭에서 사용자는 마우스 클릭과 키 입력(매크로)을 기록할 수 있습니다. 그러나 일부 기능에는 매크로가 제공할 수 있는 것보다 더 심층적인 스크립팅이 필요합니다. 여기서 VBA 스크립팅이 큰 이점이 됩니다. 사용자가 더 복잡한 스크립트를 만들 수 있습니다.

이 기사에서는 다음을 설명합니다.

  • 스크립트 및 매크로 활성화
  • Excel에서 매크로를 만드는 방법
  • 매크로의 특정 예
  • VBA에 대해 자세히 알아보기
  • VBA 시작 버튼(Button) 만들기
  • (Add Code)버튼 기능(Button Functionality) 을 제공하는 코드 추가
  • 효과가 있었나요?

스크립트 및 매크로 활성화(Enabling Scripts & Macros)

Excel 에서 매크로 또는 (Excel)VBA 스크립트를 만들려면 먼저 리본(Ribbon) 메뉴 에서 개발(Developer ) 도구 탭을 활성화해야 합니다. 개발자(Developer) 탭 은 기본적으로 활성화되어 있지 않습니다. 활성화하려면:

  • Excel 워크시트를 엽니다.
  • 파일(File ) > 옵션( Options ) > 리본 사용자 지정( Customize Ribbon.) 을 클릭합니다 .

  • 개발자(Developer) 옆에 있는 상자에 체크 표시를 하십시오 .

  • 리본(Ribbon) 메뉴 에서 개발(Developer) 도구 탭을 클릭 합니다.

  • 그런 다음 매크로 보안 을 클릭하고 (Macro Security)모든 매크로 활성화(권장하지 않음, 잠재적으로 위험한 코드가 실행될 수 있음) (Enable all macros (not recommended; potentially dangerous code can run). ) 옆의 확인란을 선택합니다 .
  • 그런 다음 확인을 클릭합니다.( OK.)

매크로가 기본적으로 켜져 있지 않고 경고와 함께 표시되는 이유는 매크로가 맬웨어를 포함할 수 있는 컴퓨터 코드이기 때문입니다.

(Make)Excel 및 기타 Microsoft 프로그램 의 공유 프로젝트에서 작업하는 경우 문서의 출처를 신뢰할 수 있는지 확인 하십시오.

스크립트와 매크로 사용이 끝나면 모든 매크로를 비활성화하여 잠재적으로 악성 코드가 다른 문서를 감염시키는 것을 방지하십시오.

Excel에서 매크로 만들기(Create a Macro in Excel)

매크로를 기록하는 동안  Excel 에서 수행하는 모든 작업이 Excel에 추가됩니다.

  • 개발자 탭에서 매크로 기록(Record Macro) 을 클릭합니다 .

  • 매크로 이름(Macro name) , 바로 가기 키(Shortcut key)설명(Description. ) 을 입력 합니다. 매크로(Macro) 이름은 문자로 시작해야 하며 공백을 사용할 수 없습니다. 바로 가기 키는 문자여야 합니다.

다음 옵션에서 매크로를 저장할 위치를 결정합니다.

  • 개인용 매크로 통합 문서 : 모든 (Personal Macro Workbook)Excel 문서 에 사용할 매크로가 저장된 숨겨진 Excel 문서를 생성합니다 .
  • 새 통합 문서(New Workbook) : 생성된 매크로를 저장할 새 Excel 문서를 생성합니다.(Excel)
  • This Workbook : 현재 편집 중인 문서에만 적용됩니다.

완료되면 확인(OK) 을 클릭 합니다. 

  • (Run)자동화하려는 작업을 실행 합니다. 완료되면 녹음 중지(Stop Recording) 를 클릭 합니다. 
  • 매크로에 액세스하려면 제공된 키보드 단축키를 사용하십시오.

매크로의 특정 예(Specific Example Of a Macro)

고객을 위한 간단한 스프레드시트와 고객이 지불해야 하는 금액부터 시작하겠습니다. 워크시트의 서식을 지정하는 매크로를 만드는 것부터 시작하겠습니다.

이름과 성을 별도의 열에 넣는 것과 같이 모든 스프레드시트가 다른 형식을 사용해야 한다고 가정해 보겠습니다. 

수동으로 변경할 수 있습니다. 또는 매크로를 사용하여 프로그램을 만들어 자동으로 올바른 형식을 지정할 수 있습니다.

매크로 기록(Record The Macro)

  • 매크로 기록(Record Macro) 을 클릭합니다 . 이를 Format_Customer_Data 라고 하고 (Format_Customer_Data)확인(OK) 을 클릭 하겠습니다 . 
  • 원하는 형식을 얻으려면 첫 번째 열 이름을 First Name 으로 변경합니다 . 
  • 그런 다음 A 옆에 열을 삽입하고 이름을 Last Name 이라고 합니다 . 
  • (Highlight)첫 번째 열의 모든 이름(여전히 성과 이름 포함)을 강조 표시 하고 리본 탐색 에서 데이터 를 클릭합니다.(Data)
  • 텍스트를 열로 를(Text to Columns) 클릭합니다 .

  • 구분 > 다음(Next ) > 공백 으로 (Separate by Space)구분(Delimited) > 다음(Next ) > 마침(Finish) 을 선택 합니다 . 아래 스크린샷과 위의 프로세스에 의해 이름과 성이 어떻게 분리되었는지 참조하십시오.

  • 미지불 잔액(Balance Due) 필드 의 서식을 지정하려면 금액을 강조 표시합니다. (Home ) > 조건부 서식(Conditional Formatting) > 셀 규칙 강조 표시(Highlight Cell Rules) > 보다 큼(Greater Than ) > 0 을 (0)클릭(Click) 합니다 .

잔액이 있는 셀이 강조 표시됩니다. 형식을 더 자세히 설명하기 위해 잔액이 없는 몇 명의 고객을 추가했습니다.  

  • 개발자(Developer ) 로 돌아가서 기록 중지(Stop Recording) 를 클릭 합니다.

매크로 적용(Apply The Macro)

올바른 형식을 지정하기 위해 매크로를 기록하기 전에 원본 스프레드시트부터 시작하겠습니다. 매크로를 클릭(Click) 하고 방금 만든 매크로를 선택(Macros) 하고 실행 합니다.(Run)

매크로를 실행하면 모든 서식이 자동으로 수행됩니다. 방금 만든 이 매크로는 Visual Basic Editor 에 저장됩니다 .

사용자는 여러 가지 방법으로 매크로를 실행할 수 있습니다. 자세한 내용 은 매크로 실행(Run a macro) 을 참조하세요.  

VBA에 대해 자세히 알아보기(Learn More About VBA)

VBA에 대해 알아보려면 개발자(Developer) 탭 에서 매크로(Macro) 를 클릭하십시오. 생성한 항목을 찾아 편집을 클릭합니다.(Edit.)

위 상자에 표시되는 코드는 매크로를 기록할 때 생성된 코드입니다. 

동일한 방식으로 다른 고객 지불 스프레드시트의 형식을 지정하려는 경우에도 실행합니다.

VBA 시작 버튼 만들기(Create a Button To Get Started With VBA)

위의 동일한 스프레드시트를 고객과 고객이 빚진 금액을 사용하여 통화 변환기를 만들어 보겠습니다.

  • 버튼 요소를 삽입하려면 개발자(Developer ) 탭으로 이동하십시오. 
  • 컨트롤(Controls) 섹션 의 삽입(Insert) 옆에 있는 드롭다운에서 ActiveX 명령 단추(ActiveX Command Button ) 를 선택 합니다 .

  • 스프레드시트의 아무 곳이나 버튼을 드래그(Drag) 하여 쉽게 액세스하고 원하는 경우 나중에 변경할 수 있습니다.

  • 코드를 첨부하려면 버튼을 마우스 오른쪽 버튼으로 클릭하고 속성 을 선택 합니다(Properties) . NameCommandButton 으로 유지하고 Caption to(Caption ) Convert (( Convert ) 이것은 버튼 텍스트)를 유지합니다.

버튼 기능을 제공하는 코드 추가(Add Code To Give The Button Functionality)

VBA 코딩은 (VBA)Excel 인터페이스 에서 발생하지 않습니다 . 별도의 환경에서 이루어집니다.  

  • 개발자(Developer) 탭 으로 이동하여 디자인 모드(Design Mode) 가 활성화되어 있는지 확인하십시오 .

  • 방금 만든 버튼의 코드에 액세스하려면 해당 버튼을 마우스 오른쪽 버튼으로 클릭하고 코드 보기(View Code) 를 선택 합니다.

  • 아래 스크린샷의 코드를 보면 코드의 시작( Private Sub )과 끝( End Sub )이 이미 있습니다.

  • 아래 코드는 통화 변환 절차를 진행합니다.

ActiveCell.Value = (ActiveCell * 1.28)

이 섹션의 목적은 스프레드시트의 통화를 변환하는 것입니다. 위의 스크립트는 GBP(GBP) 에서 USD 로의 환율을 반영합니다 . 셀의 새 값은 현재 거기에 1.28을 곱한 값이 됩니다.

아래 스크린샷은 코드 를 삽입한 후 VBA 창에서 코드가 어떻게 보이는지 보여줍니다.

  • 상단 탐색에서 파일(File ) 로 이동하고 닫기 및 Microsoft Excel(click on Close and Return to Microsoft Excel) 로 돌아가기를 클릭하여 기본 Excel 인터페이스로 돌아갑니다.

효과가 있었나요?(Did It Work?)

코드를 테스트하려면 먼저 디자인 모드(Design Mode) 를 비활성화 (클릭)해야 추가 수정을 방지하고 버튼 기능을 제공할 수 있습니다.

  • (Type)스프레드시트에 숫자를 입력 한 다음 변환(Convert) 버튼을 클릭합니다. 숫자 값이 약 4분의 1만큼 증가하면 효과가 있는 것입니다.

이 예에서는 숫자 4를 셀에 넣습니다. 변환(Convert) 을 클릭한 후 숫자가 5.12로 변경되었습니다. 4 곱하기 1.28은 5.12이므로 코드가 올바르게 수행되었습니다.

이제 Excel(Excel) 에서 매크로나 스크립트를 만드는 방법을 이해했으므로 이를 사용하여 Excel 에서 다양한 작업을 자동화할 수 있습니다 .



About the author

저는 프리웨어 소프트웨어 개발자이자 Windows Vista/7 옹호자입니다. 팁과 트릭, 수리 가이드, 모범 사례를 포함하여 운영 체제와 관련된 다양한 주제에 대해 수백 편의 기사를 작성했습니다. 또한 회사인 헬프 데스크 서비스를 통해 사무실 관련 컨설팅 서비스를 제공합니다. Office 365의 작동 방식, 기능 및 가장 효과적으로 사용하는 방법을 깊이 이해하고 있습니다.



Related posts