엑셀 / 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입니다.

같은 카테고리의 다른 글
엑셀 / 함수 / VLOOKUP, HLOOKUP, XLOOKUP

엑셀 / 함수 / VLOOKUP, HLOOKUP, XLOOKUP

VLOOKUP 문법 VLOOKUP(lookup_value,table_array,col_index_num,) lookup_value : 찾을 값 table_array : 조회할 범위 col_index_num : 반환하려는 값이 있는 열 번호 range_lookup : TRUE면 근사 일치, FALSE면 정확히 일치. 기본값은 TRUE 예제 =VLOOKUP(E2,A2:C16,2,FALSE) A2:C16의 1열(A열)에서 E2의 값을 찾고, 그 행의 2열(B열)의 값을 출력합니다. FALSE는 정확히 일치하는 것을 찾으라는 뜻입니다. E2에 6이 있으니, 6에 해당하는 이름 F를 출력합니다. =VLOOKUP(E2,A2:C16,3,FALSE) 가격을 출력하고 싶다면 2를 3으로 변경하면 됩니다. 선택 ...

엑셀 / 와일드카드(*, ?, ~) 사용하는 방법

엑셀 / 와일드카드(*, ?, ~) 사용하는 방법

엑셀에서 검색을 하면 검색어를 포함한 셀을 찾습니다. 예를 들어 AB로 검색을 하면 AB가 제일 앞에 있든, 중간에 있는, 마지막에 있는 다 찾습니다. 만약 AB로 시작하는 셀을 찾고 싶을 때, A로 시작해서 B로 끝나는 셀을 찾고 싶을 때, AB로 끝나는 셀을 찾고 싶을 때는 어떻게 할까요? 그럴 때 사용하는 것이 와일드카드입니다. 와일드카드는 *과 ...

엑셀 / 메모 삽입하는 방법, 메모 삭제하는 방법, 메모 일괄 삭제하는 방법

엑셀 / 메모 삽입하는 방법, 메모 삭제하는 방법, 메모 일괄 삭제하는 방법

엑셀의 메모 기능을 이용하면 셀에 대한 설명을 남길 수 있습니다. 복잡한 계산을 했거나 공동 작업을 할 때 유용한 기능입니다. 어떻게 메모를 삽입하고 삭제할 수 있는지 알아보겠습니다. 메모 삽입하는 방법 메모를 삽입하고자 하는 셀에 마우스를 올리고 우클릭을 합니다. 팝업 메뉴에서 을 클릭합니다. 메모 삽입 단축키는 입니다. 포스트잇처럼 생긴 작은 창이 생기고, 그 ...

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

개요 DAYS 함수는 두 날짜 사이의 일수를 반환하는 함수입니다. 구문 DAYS(end_date, start_date) end_date : 필수 요소로, 끝나는 날짜입니다. start_date : 필수 요소로, 시작하는 날짜입니다. 끝나는 날짜를 앞에, 시작하는 날짜를 뒤에 입력한다는 것에 주의합니다. 끝나는 날짜가 시작하는 날짜보다 이전이면 음수를 반환합니다. 예제 2018년 1월 1일부터 2018년 1월 15일까지의 일수를 계산하는 예제입니다. 만약 수식에 날짜를 직접 입력하고 싶다면 날짜를 따옴표로 감쌉니다. =DAYS("2018-01-15","2018-01-01")

엑셀 / 삼각함수(사인, 코사인, 탄젠트 등)의 값 계산하기

엑셀 / 삼각함수(사인, 코사인, 탄젠트 등)의 값 계산하기

개요 삼각함수에는 사인 함수, 코사인 함수, 탄젠트 함수, 코시컨트 함수, 시컨트 함수, 코탄젠트 함수가 있습니다. 엑셀에서 각 함수의 값을 구할 수 있는데, 함수 이름이 삼각함수의 표기법과 같습니다. 예를 들어 사인은 sin으로 나타내는데, 사인 값을 구하는 엑셀 함수도 SIN입니다. 구문 사인 함수 SIN(number) 코사인 함수 COS(number) 탄젠트 함수 TAN(number) 코시컨트 함수 CSC(number) 시컨트 함수 SEC(number) 코탄젠트 함수 COT(number) 각도의 단위 number에는 각도를 입력하는데, 단위는 라디안입니다. 45도에 대한 ...

엑셀 / 셀 내용을 그림으로 복사하기

엑셀 / 셀 내용을 그림으로 복사하기

엑셀로 작업한 결과 또는 시트의 일부분을 그림으로 만들어야 하는 경우가 간혹 있습니다. 어떻게 이미지로 만들 수 있을까요?  가장 먼저 떠오르는 건 픽픽 같은 캡쳐 프로그램으로 캡쳐를 하는 것입니다. 문제는 별도의 프로그램을 설치해야 한다는 것이죠. 또 다른 방법은, 사실 가장 간편한 방법은 엑셀에 포함된 기능을 이용하는 것입니다. 따로 프로그램이 필요한 것도 ...

엑셀 / 이메일 앞 부분 추출하는 방법

엑셀 / 이메일 앞 부분 추출하는 방법

예를 들어 B2 셀에 있는 abc@manualfactory.net에서 @ 앞 부분을 추출하고 싶다면 다음과 같이 합니다. =LEFT(B2,FIND("@",B2)-1)

엑셀 / VBA / 모듈 내보내기 가져오기

엑셀 / VBA / 모듈 내보내기 가져오기

엑셀에서 VBA로 만든 모듈을 다른 파일에서 사용하는 방법은, 그 모듈을 내보내고 다른 파일에서 가져오는 것입니다. 작업은 Visual Basic Editor에서 합니다. 모듈 내보내기 내보내기를 할 엑셀 파일을 열고 Visual Basic Editor를 엽니다. 단축키는 Alt+F11입니다. 내보낼 모듈을 선택하고 마우스 우클릭합니다. 팝업 메뉴에서 를 클릭하면 확장자가 bas인 파일로 저장됩니다. bas 파일은 텍스트 파일로, 메모장 등 텍스트 에디터로 ...

엑셀 / 여러 워크시트 한 화면에서 동시에 보기

엑셀 / 여러 워크시트 한 화면에서 동시에 보기

여러 워크시트 동시 작업 여러 워크시트에서 동시에 작업할 때가 있습니다. A 시트에서는 데이터를 관리하고, B 시트에서는 그 데이터를 분석하고... 작업을 하면서 여러 시트를 왔다갔다 하는 게 많이 불편합니다. 그럴 땐 한 화면에서 여러 시트를 한 번에 볼 수 있게 만들면 좋습니다. 시트간 이동도 편하고, 한 눈에 모든 걸 볼 수 있는 것도 ...

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

매크로를 실행하는 기본적인 방법은 매크로 창을 열고, 매크로를 선택하고 실행 버튼을 클릭하는 것입니다. 만약 자주 사용하는 매크로가 있다면 단축키를 만들거나 매크로 실행 버튼을 눌러 시간을 단축할 수 있습니다. 매크로 단축키 만들기 를 클릭합니다. 단축키는 Alt+F8입니다. 매크로를 선택하고 을 클릭합니다. 단축키를 지정하고 을 클릭하면, 그 단축키로 매크로를 실행할 수 있습니다. 매크로 실행 버튼 만들기 ...