엑셀 / VBA / 매크로 만들고 실행하기

간단한 예제로, VBA로 매크로를 만들고 실행하는 과정을 살펴보겠습니다.(개발 도구 메뉴가 없는 경우 옵션 변경으로 추가할 수 있습니다.)

  • [개발 도구]에서 제일 왼쪽에 있는 [Visual Basic]을 클릭합니다.(단축키는 Alt+F11입니다.)

  • 다음과 같은 에디터 창이 나오는데...

  • [Microsoft Excel 개체]를 선택하고 마우스 우클릭한 후, [삽입]의 [모듈]을 클릭합니다.

  • 코드를 넣을 수 있는 창이 나오는데...

  • 다음 코드를 입력합니다.
Sub SayHello()
  Sheet1.Range("A1").Value = "HELLO"
End Sub
  • SayHello라는 이름의, A1 셀에 HELLO를 입력하는 매크로를 만드는 것입니다.

  • 이제 [개발 도구]의 [매크로]를 클릭합니다.(단축키는 Alt+F8입니다.)

  • SayHello가 선택된 상태에서 [실행]을 클릭하면...

  • A1 셀에 HELLO가 입력됩니다.

  • 코드를 다음처럼 수정하고, 다시 매크로를 실행하면...
Sub SayHello()
  Sheet1.Range("A1:A10").Value = "HELLO"
End Sub

  • A1부터 A10까지 HELLO가 입력됩니다.

  • 매크로를 포함한 엑셀 파일을 저장할 때는 [Excel 매크로 사용 통합 문서 형식]으로 저장합니다.
  • 이 형식의 확장자는 xlsm입니다.

같은 카테고리의 다른 글
엑셀 / 피벗 테이블 / 보고서 레이아웃

엑셀 / 피벗 테이블 / 보고서 레이아웃

피벗 테이블을 만들었을 때, 데이터 표시 방법이 마음에 들지 않을 수 있습니다. 접고 펴기가 가능한 그룹화된 모양인데, 경우에 따라서 일반적인 표 모양의 결과물이 필요할 수도 있죠. 만약 표시 형식을 바꾸고 싶다면 피벗 테이블의 레이아웃을 변경하면 됩니다. 아래와 같은 표로 여러 가지 레이아웃의 피벗 테이블을 만들어보겠습니다. 워크시트를 하나 추가하고, 을 클릭합니다. [외부 ...

엑셀 / 메모 인쇄하는 방법

엑셀 / 메모 인쇄하는 방법

셀에 넣은 메모를 인쇄하는 방법은 두 가지가 있다. 하나는 화면에 보이는대로 인쇄하는 것이고, 다른 하나는 마지막 페이지에 모아서 인쇄하는 것이다. 만약 화면에 보이는대로 인쇄하고 싶다면, 메모가 있는 셀을 선택하고 마우스 우클릭한 후... 를 클릭하여 메모를 표시한다. 마지막 페이지에 모아서 출력할 때는 필요 없는 과정이다. 인쇄(Ctrl+P)에서 을 클릭하고... 탭을 선택한 후, [주석 ...

엑셀 / 암호 설정하는 방법, 암호 해제하는 방법

엑셀 / 암호 설정하는 방법, 암호 해제하는 방법

암호 종류 엑셀에는 두 가지 암호가 있어요. 하나는 열기 암호, 또 하나는 쓰기 암호입니다. 둘 중 하나만 설정해도 되고, 둘 다 설정해도 돼요. 열기 암호를 설정하면 문서를 열 때 암호가 필요합니다. 암호를 모르면 문서 내용을 볼 수 없어요. 쓰기 암호를 설정하면 문서를 수정할 때 암호가 필요합니다. 암호를 몰라도 문서의 내용은 볼 수 있어요. 열기 암호와 ...

엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

개요 EVEN은 짝수로 만드는 함수, ODD는 홀수로 만드는 함수입니다. 구문 EVEN(number) ODD(number) 양수인 경우 가까운 짝수 또는 홀수로 올림하고, 음수인 경우 가까운 짝수 또는 홀수로 내림합니다. 예를 들어 EVEN(123) 은 123에서 가까운 짝수로 올림한 값 124를 반환합니다. EVEN(-123) 은 -123에서 가까운 짝수로 내림한 값 -124를 반환합니다. 즉, 인수가 부호만 차이난다면 결과도 부호만 차이납니다. 인수가 소수인 경우 정수를 반환합니다. 예를 들어 EVEN(122.1) 은 124를 ...

엑셀 / 함수 / VAR.P, VAR.S, VARP, VAR / 분산과 표본분산 구하는 함수

엑셀 / 함수 / VAR.P, VAR.S, VARP, VAR / 분산과 표본분산 구하는 함수

개요 VAR.P는 분산을 구하는 함수입니다. 엑셀 2007 이전 버전이라면 VARP 함수를 사용합니다. VAR.S는 표본분산을 구하는 함수입니다. 엑셀 2007 이전 버전이라면 VAR 함수를 사용합니다. 구문 분산을 구하는 구문은 다음과 같습니다. VAR.P(number1,,...) 표본분산을 구하는 구문은 다음과 같습니다. VAR.S(number1,,...) 예제 다음은 같은 자료로 분산과 표본분산을 구하는 예제입니다. 표본분산이 좀 더 크게 나와야 정상입니다.

엑셀 / 화면 확대, 축소 하는 방법

엑셀 / 화면 확대, 축소 하는 방법

화면 확대/축소 엑셀의 기본 글자 크기는 보통 11pt입니다. 대부분 그 크기에 익숙해져있지만, 좀 더 크게 또는 좀 더 작게 보는 게 편할 때가 있습니다. 글자 크기를 변경하는 방법도 있지만, 다른 사람과 자료를 공유해야 하거나, 프린터로 인쇄해야 하는 경우에는, 글자 크기는 그대로 둔 채 화면만 확대/축소하는 게 좋습니다. 화면을 확대/축소하는 방법 두 가지를 소개해드립니다. 방법 ...

엑셀 / 리본 메뉴 숨기기, 탭만 표시하기

엑셀 / 리본 메뉴 숨기기, 탭만 표시하기

탭과 리본 메뉴 엑셀을 실행시키면 상단에 여러 메뉴들이 있습니다. 제일 위에 있는 파일, 홈, 삽입 등을 탭이라 하고, 탭 밑에 있는 것을 리본 메뉴라고 합니다. 아래 스크린샷에서 빨간 박스 부분이 리본 메뉴입니다. 리본 메뉴가 상당히 두꺼워서 노트북 같이 화면이 작은 기기에서 작업할 때 불편할 수 있습니다. 그럴 땐 필요할 때만 리본 메뉴가 ...

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

개요 LARGE는 데이터 집합에서 k번째로 큰 값을 반환하는 함수입니다. SMALL은 데이터 집합에서 k번째로 작은 값을 반환하는 함수입니다. 구문 LARGE(array,k) ​SMALL(array,k) array : 필수 요소로, 데이터 집합입니다. k : 필수 요소입니다. 몇 번째로 큰 값 또는 작은 값을 찾을지 정합니다. 예제 예제 1 10, 20, 30, 40, 50 중에서 2번째로 큰 값 또는 작은 값을 구합니다. 예제 2 10, 20, 30, 40, 50 중에서 첫 ...

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

개요 DATEDIF는 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수입니다. 구문 DATEDIF(start_date,end_date,unit) start_date : 시작하는 날짜입니다. end_date : 끝나는 날짜입니다. unit : 반환할 정보의 형식입니다. Y, M, D, YM, YD 등을 사용할 수 있습니다. Y는 년수, M은 월수, D는 일수, YM은 년도를 무시한 월수, YD는 년도를 무시한 일수를 반환합니다. start_date가 end_date보다 이후라면 #NUM!를 반환합니다. 예제 다음은 2018년 1월 15일부터 2019년 6월 5일까지의 ...

엑셀 / 함수 / AVERAGE, AVERAGEIF, AVERAGEIFS / 산술평균 구하는 함수

엑셀 / 함수 / AVERAGE, AVERAGEIF, AVERAGEIFS / 산술평균 구하는 함수

개요 AVERAGE는 산술평균을 구하는 함수이다. 특정 조건에 맞는 값들의 산술평균을 구하고 싶다면 AVERAGEIF 또는 AVERAGEIFS 함수를 사용한다. AVERAGE 구문 AVERAGEA(value1, , ...) value1은 필수 요소이고, 이후의 value는 선택 요소이다. 평균을 구하려는 셀, 셀 범위 또는 값으로, 1개에서 255개까지 지정할 수 있다. 예제 예제 1 1, 2, 3의 산술평균을 구한다. 예제 2 1, 2의 산술평균을 구한다. 범위에 문자가 포함된 경우 무시한다. AVERAGEIF 구문 AVERAGEIF(range, criteria, ) range ...