하나셀-초간단 피봇

1백만 건 데이터도 3초면 OK!복잡한 부분합이나 그룹 함수 몰라도 클릭 한 번이면 자동으로 중복 제거, 건수와 합계까지 완성.

하나셀-카카오톡 PC 발송

복사 붙여넣기는 이제 그만! 카카오톡 PC버전에서 메시지를 직접 자동 입력해 1:1로 깔끔하게 보낼 수 있어요. 단체방에서 개인정보 유출 걱정 없이, 100명이 넘는 고객에게도 일일이 손 안 대고 안부를 전하세요.
엑셀자료 사용 안내 엑셀 매크로(VBA)를 이용하여 만든 간단한 프로그램과 엑셀 매크로(VBA)를 배울 수 있는 강좌가 있습니다.따라서, 대부분 프로그램을 이용하기 위해서는 엑셀 매크로 사용하기 설정을 하여야 합니다. (1.보안설정) 클릭 (2.개발도구설정) 클릭 3.매크로 차단 해제 방법

엑셀 매크로(VBA)는 변수를 선언하거나, 배열을 몰라도 할 수 있습니다.

​

저는 프로그램을 공부한 경험이 없지만, 업무에 필요한 일들은 엑셀 매크로(VBA)로 처리해 왔습니다. 따라서, 일반적인 VBA 스크립트와는 다소 다른 형식으로 작성합니다. 

​

저와 같이 VBA를 배워간다면 어려운 변수 선언이나, 오브젝트를 설정하지 않고 직접 눈으로 보면서 스크립트를 만들어 갈 수 있습니다.


 

실제 사례를 통해서, 매크로(VBA)가 얼마나 쉬운지 설명드리겠습니다.

​

네이버 지식인 등에 많은 질문이 엑셀 파일 정리 중 하나가 바로 "중복 행 찾기" 입니다.

​

A라는 데이터 그룹과 B라는 데이트 그룹이 있으면, 

A데이터에도 있고 B데이터에도 있는 것을 찾고 싶은 경우입니다.

​

예를 들자면, 회사에서 자기 부서에서 관리하고 있는 직원 명단에 옆 부서에서 관리 중인 직원 명단을 비교하는 경우에 생길 수 있는 등, 무수히 많은 경우가 있습니다.

​

이 경우 단순한 해결은 엑셀이 제공하는 함수 vlookup을 사용해서 같은 항목을 찾아낼 수 있습니다. 

​

아래와 같이 2개의 쉬트가 있습니다.

 

첫째는 2020년 리스트이고

이미지 000001.png

 

 

둘째는 2019년 리스트입니다.

이미지 000002.png

 

이제 이 두 개의 쉬트를 비교해서 중복이 되는 회원을 F열에 기록하는 매크로(VBA)를 만들어 봅니다.

이름으로만 비교하는 경우 동명이인이 있을 수 있기에 보통 중복 데이터를 찾는다는 것은 이름 + 주민번호

또는 이름 + 핸드폰번호 등 입니다.

​

이곳에서는 이름 + 핸드폰 번호가 동일한 중복 데이터를 찾아서 F열에 중복여부를 기록하겠습니다.

​

​왕 초보용 엑셀 매크로(VBA) 배우기 - 1 에서 알아봤던 3가지만 가지고 만들어 보도록 하겠습니다.

 

 

이것만 알면 VBA 스크립트를 작성할 수 있습니다.

​


① i = i +1 

② if   then  else end if

③ for    to    next 


 

직접 스크립트를 작성했습니다.

그 결과 중복 데이터를 찾아서 기록하는 스크립트는 위에서 중요한 3가지만 가지고 작성해도 충분합니다.

그리고 겨우 12줄로 충분했습니다.

 

이미지 000003.png

 

 

실제로 구동되는(작동되는) 프로그램입니다.

프로그램에 등장하는 변수 선언도 없으며, 프로그램머가 사용하는 전문적인 명령어는 한 가지도 없습니다.

거의 자연어에 가깝게 읽고 이해할 수 있습니다.

Sheets("명단2019년").Select 라는 명령어를 살펴보면 너무 잘 알 수 있습니다.

"Sheets("명단2019년").선택해라" - 별다른 설명을 할 필요가 없습니다.

​

엑셀 매크로(VBA)는 대부분 이렇게 작성할 수 있습니다. (하지만 효율적이지는 않습니다. - 프로그램을 실행하면 엑셀은 힘들어요. 하지만 내가 힘들지 않기 때문에 상관없어요.)

 

이미지 000004.png

 

위 로직은 단순합니다.

​

명단2020년 1번에 있는 식별자(i_id-김회원010-1234-5678)를 명단2019년에서 8명을 전부 검색해서 회원이름 + 핸드폰번호가 같으면 명단2019년 F칼럼에 "중복"이라고 기재합니다. 같은 식으로 1번, 2번, 3번 ~ 10번까지 검색합니다.

즉 명단2020년 회원 10명 각각을 명단2019년 회원 8명 각각에 대입해서 일치 여부를 판단하게 됩니다.

​

엄청 명쾌하고 단순합니다.

​

위 스크립트는 명단2019년에만 중복여부를 표시하게 됩니다.

만약 명단2020년에도 중복여부를 표시하려면 어떻게 하면 될까요?

if 문 속에 Cells(j, 6) = "중복"에 한번 엔터를 쳐서 줄바꿈을 한 다음

Sheets("명단2020년").Select

Cells(i, 6) = "중복"

2줄을 넣어주면 됩니다.

​

위 스크립트는 2중 루핑(looping)을 도는 구조입니다.

파란색 네모칸은 명단2020년을 루핑하게 하고

빨간색 네모칸은 명단2019년을 루핑하게 합니다.

​

엑셀 파일을 보면서 직접 타이핑하면서 익혀 놓으세요. 두말할 필요없이 많이 사용하는 개념입니다.

​

왕초보용_매크로(VBA)_2.xlsm (파일 다운로드 클릭하세요)​

​

우리가 다 알고 있지만, 실제로 이름은 위 사례처럼 딱 3자리로 구성되지도 않았고, 공백이 있는 경우도 있고, 띄어쓰기도 틀립니다. 심지어 괄호 속에 특징을 적어 놓기도 합니다.

그리고 전화번호는 앞에 0이 없는 것, 010/1234/4567로 구분한 것, 어떤 경우는 010 1234 5678로 만든 것 등등 데이터가 비교할 수 없도록 된 경우가 빈번합니다.

​

이경우 중복명단을 찾아낼 수 없기에 데이터를 일원화를 하고 상호 비교 작업을 하게 됩니다.

그것을 배워보도록 하겠습니다.

​

​

사진 및 파일 첨부

여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

파일 용량 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )

  1. 엑셀 프로그램 요청하기(무료 또는 책 구입 후원) 8 file

  2. 왕 초보용 엑셀 매크로(VBA) 배우기 - 1 (가장 중요한 3가지 기억하기) 5 file

  3. 왕 초보용 엑셀 매크로(VBA) 배우기 - 10 (매일 10페이지 책읽기 프로그램 5/6) 0 file

  4. 왕 초보용 엑셀 매크로(VBA) 배우기 - 9 (매일 10페이지 책읽기 프로그램 4/6) 0 file

  5. 왕 초보용 엑셀 매크로(VBA) 배우기 - 8 (매일 10페이지 책읽기 프로그램 3/6) 0 file

  6. 왕 초보용 엑셀 매크로(VBA) 배우기 - 7 (매일 10페이지 책읽기 프로그램 2/6) 0 file

  7. 왕 초보용 엑셀 매크로(VBA) 배우기 - 6 (매일 10페이지 책읽기 프로그램 1/6) 1 file

  8. 왕 초보용 엑셀 매크로(VBA) 배우기 - 5 (중복 행 찾기 4/4) 2 file

  9. 왕 초보용 엑셀 매크로(VBA) 배우기 - 4 (중복 행 찾기 3/4) 0 file

  10. 왕 초보용 엑셀 매크로(VBA) 배우기 - 3 (중복 행 찾기 2/4) 0 file

  11. 왕 초보용 엑셀 매크로(VBA) 배우기 - 2 (중복 행 찾기 1/4) 0 file

  12. 일본어 한자 후리가나 자동입력 및 파파고 한글번역 그리고, 구글 영어번역까지 한번에 2 file

  13. MS오피스 언어가 일본어로 나올 때 한국어로 바꾸기 0 file

  14. PDF 영어문장 합치기(PDF 문서 영어 글자를 정상적인 영문으로 일괄 바꿔주기) 0 file

  15. 엑셀에 마이크로소프트(MS) 영어 음성합성시스템(TTS) 설치하기 0 file

  16. 따옴표 없이 엑셀 글자 복사하기 0 file

  17. 구글 번역을 엑셀로, 텍스트 문장을 한꺼번에 구글 번역하기 2 file

  18. 엑셀 비어있는 셀(공란인 행 또는 열) 한번에 삭제하기 0 file

  19. 엑셀 책 쪽수 자동 계산하는 법 0 file

  20. 엑셀에서 문자+숫자 정렬 이상하게 될 때 (매크로 사용하지 않는 방법) 0 file

  21. 엑셀 VBA(Visual Basic 버튼) 활성화 방법 0 file

  22. 엑셀에서 일본어 후리가나 사용하기 1 file

Board Pagination Prev 1 2 3 Next
/ 3

LOGIN

SEARCH

MENU NAVIGATION