하나셀-초간단 피봇

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

하나셀-카카오톡 PC 발송

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

엑셀 매크로(VBA) 배우기 위해 마이크로 소프트사에 직접 전화했습니다. 

​

엑셀을 처음으로 접하게 된 것은 회사 생활을 시작하며서, 동료 직원들이 사용하는 주판(주산) 계산 능력을 따라잡기 위함이었으나, 실제로 엑셀을 직접 접한게 된 것은 조금 더 회사 생활을 한 이후입니다.

왜냐하면, 회사 생활을 시작하게 된 시점은 PC에 윈도 3.1이 설치되어 있었으나, 활용할 수 있는 프로그램이 없었습니다. Dos가 여전히 주력 프로그램이기 때문이었습니다.

​

그래서, 회사에서 공급한 컴퓨터용 계산 프로그램은  금성소프트웨어(LG)에서 Hana spread sheet로 로터스123, 쿼트로 프로 등에는 없는 깔끔한 표를 만들어주는 훌륭한 프로그램이었습니다. 또한 일부 부서에서는 엑셀의 전신인 멀티 플랜(MP)를 이용하기도 하였습니다.

​

그러나, 이들 프로그램은 수식 계산은 대동소이 하나 한계는 바로 매크로이었습니다.

하나 스프레드시트, 로터스123, 쿼트로프로, 멀티플랜에 있는 매크로는 단순한 순차 기록 매크로였으며, 현재와 같은 엑셀 VBA 매크로는 아니었습니다. VBA매크로는 아마도 엑셀 5.0부터로 생각됩니다.

​

엑셀에 엑셀 VBA 매크로 가 더해지고, 막강한 줄긋기 기능이 확보되자 대부분 사무환경은 워드에서 엑셀로 넘어가게 됩니다. 숫자가 별로 필요 없는 단순한 Document 조차 엑셀에서 작성하는 사례가 늘어나게 됩니다.

​

이 당시, 제가 엑셀을 스스로 공부하면서 저지른 무지한 행동 한 가지를 소개합니다.

엑셀이 초창기에는 참고할만한 도서도 많지 않았고, 제 컴퓨터에 대한 얕은 지식으로 궁금한 사항이 생길 때, 한국 마이크로소프트에 직접 전화를 걸어서 엑셀의 기능에 대해서 물어보곤 했습니다.

​

아마, MS 회사에서 상담을 해주시는 분들이 지금과 같은 콜센터 직원이 아니고, MS 직원이라 엑셀 사용법을 가르쳐 줄 수 있었던 것으로 생각됩니다. 약 3번째쯤 제가 궁금한 점을 질문하고 MS 직원은 답변한 뒤에, MS 회사는 엑셀의 사용법을 가르쳐 주는 곳이 아니며, MS에서 구입한 엑셀이 설치가 안 될 경우에 지원을 해 주는 곳이라고 합니다. 즉 더 이상 단순 사용법은 질문은 곤란하다고 저에게 알려줍니다. 

​

그 뒤에 저는 엑셀 활용 책자를 구입하고, 직접 책 저자에게 전화해서 엑셀을 배웠던 기억이 납니다. 너무 친절한 엑셀 책 저자님, 그러나 답변을 이해할 수 없었던 저의 짧은 지식이었습니다.

​

지금 돌이켜보면, 무지한 행동들이었습니다.


 

지금까지 배웠던 엑셀 매크로(VBA)는 VBA 코드에 집중했으나, 이번에는 VBA 코드가 에러가 발생할 때 필요한 디버깅에 대하여 알아보도록 하겠습니다.

​

실제로 저는 디버깅을 거의 하지 않습니다. 대부분 MsgBox로 해결해 왔습니다.

​

그 이유는 제가 만드는 엑셀 코드는 기껏해야 20줄 이내입니다. 디버깅을 할 필요가 없었기 때문입니다.

​

그래서, 엑셀로 해결하기 쉽지 않은 문제를 풀어나가는데  디버깅을 할 필요가 없는 사례를 찾아보았습니다.

아래의 사례는 2020년 3월에 네이버 지식인에 질문으로 등록된 것입니다.

​

조건은 다음과 같습니다.

 


자신은 하루에 책 읽기를 매일 하고자 계획합니다.

그래서, 책을 구입하면 매일 10 페이지씩 읽을 것이라, 일자별로 시작 페이지와 끝 페이지를 알고 싶고,

특정한 날에 10 페이지를 읽지 못하거나 더 읽게 되면, 그 페이지를 기준으로 앞날의 계획을 수정하고 싶다는 조건입니다.


 

일견 아주 쉬운 질문으로 보입니다. 그런데 실제로 약 5시간이 경과하도록 네이버 지식인에서 아무도 답변을 하지 않았고, 질문자는 스스로 무리한 질문으로 생각해서인지 질문을 삭제해서 지금은 없어진 상태입니다.

​

위 질문을 엑셀로 구현하기 쉽지 않은 이유는 바로 단순한 조건이 아니기 때문입니다.

​

- 첫째, 매일 10페이지씩 구분한다(쉬움)

- 둘째, 끝 페이지가 10페이지가 아니면 그날 이후 페이지를 수정한다(쉬움)

​

하지만, 2번째 조건은 단 1번 발생하는 것이 아니라, 수차례 발생할 수 있다는 점이 문제를 어렵게 만듭니다.

​

제 생각에는 사무환경에서 발생하는 엑셀 문제는 이 이상 어려운 조건은 거의 없을 것으로 생각됩니다.

만약 이 정도 난이도 엑셀 문제를 스스로 해결한다면, 대부분 업무 중에 발생하는 일은 엑셀로 해결 가능합니다.

 

이미지 048.png

 

 

먼저, 위와 같이 엑셀에 필요한 서식을 만들었습니다.

구입한 책의 첫 페이지와 끝 페이지 정보, 그리고 매일 읽고 싶은 페이지를 정의합니다.

​

1. 매일 10페이지씩 책 읽기 매크로(VBA) 코딩하기

​

이것은 아주 단순합니다.

 

이미지 049.png

 

 

총 18줄로 작성된 코드입니다.

​

첫째, 파란색 박스는 책의 첫 페이지, 마지막 페이지, 그리고 증감 페이지를 지정합니다.

둘째, 빨간색 박스인 Do While Loop를 실행합니다.

Do While Loop는 For Next와 아주 유사합니다. 

 


Do While i_end >= i_start 

​

      i_start = i_start + 증감 페이지(i_step)

​

Loop


 

Do While Loop 속에서 시작페이지를 증감 페이지만큼 늘리고, 그 늘린 숫자와 마지막 페이지를 비교해서, 마지막 페이지 보다 작을 때까지 계속 루핑 하라는 명령입니다.

​

위 매크로(VBA) 코드를 실행하면, 다음과 같은 결과가 나오게 됩니다.

​

이미지 050.png

 

 

즉, 책을 새로 사서 매일 10페이지를 읽는다면,  13일 만에 전부 읽게 됩니다.

​

이제 네이버 지식인에 질문한 질문자의 첫 번째 조건을 매크로(VBA)로 만들었을 뿐입니다.

​

​

다음번에는 질문자의 두 번째 조건에 대해서 알아보도록 하겠습니다.

​

그리고, 사실 이곳에서 살펴본 것처럼, 엑셀은 디버깅이 크게 필요없습니다. 보시는 것처럼, 엑셀은 VBA코드를 작성하면서 동시에 결과를 즉시 눈으로 보고 확인하기 때문에 바로 코드를 고칠 수 있습니다.

뿐만 아니라, 대부분 프로그램 코드를 짧게 만들 수 있기에 프로그램 단계별로 디버깅할 필요가 없습니다.

​

어째든 다음 회차에 질문자의 두번째 조건과 디버깅에 대해서 알아보겠습니다.

​

(엑셀 파일 첨부하지 않습니다. 직접 타이핑해서 연습해 보세요)

​

  • ?
    슈슈 2024.01.10 10:41

    Dos라는 말을 오랜만에 들어보네요...
    저 어렸을때 형님이 Dos 게임을 자주하곤 했는데,,,


    엑셀을 익히기 위해 노력하셨던 선배님이 멋집니다.

사진 및 파일 첨부

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

파일 용량 제한 : 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