본문 바로가기

WeekdayLife/excel vba tutorial4

[엑셀VBA/초보자] xla 파일 (5일차) xlsm, xlam열심히 코드를 짯다면, 코드를 관리해야 한다. 엑셀에서 vba 코드를 포함한 문서를 저장하려고 하면, xlsm 파일 확장자가 가장 눈에 띈다. Excel Macro-Enabled Workbook 이라고 적혀있다.이때가 중요하다. 유혹을 뿌리치고, 눈을 밑으로 잠시 내리다 보면, xlam 파일이 보인다. 앞선 글의 내용에서 밝혔든 어떤 vba든간에, 해당 파일(workbook)에서만 맞춰서 작업이 된 것이거나, 어떤 상황에서든 사용할 수 있는 것 둘 중 하나다.   예를 들어, 1번 시트의 데이터를 2번시트의 요약테이블로 정리를 해주는 vba라면, xlsm 확장자를 고르는 게 맞겠고, 전체 시트를 개별 pdf로 추출해주는 vba라면 xlam 확장자를 고르는게 낫다.  xlam 파일 활용x.. 2024. 8. 21.
[엑셀VBA/초보자] 코드 실행과 디버깅 (4일차) 엑셀VBA코드 실행코드를 작성했으니, 실행을 해야한다. 앞서 얘기한 것처럼 function프로시저는 함수처럼 입력하여 사용하는 것이므로, 따로 실행방법은 필요가 없을 것이기 때문에 sub프로시저에 한정해서 이야기 한다. sub프로시저는 VBE 창에서 실행하는 방법과 엑셀창에서 실행하는 방법이 있다. VBE창에서 실행VBE창에서 RUN(실행?) 메뉴를 보면, Run Sub/UserForm 이라는 항목이 있다. 마우스 커서를 원하는 sub프로시저 위에 두고, 단축키 F5를 눌러주면 해당하는 프로시저 전체가 실행된다.   VBA는 코드를 기재된 순서대로 순차적으로 읽어 내려오는 구조를 가진다. 그래서, 한줄씩 과정을 확인해가면서 실행할 수 있는데, F8키를 누를때마다 한줄씩 실행이 되고, 아래 그림처럼 실행되.. 2024. 8. 7.
[엑셀VBA/초보자] 테스트 코드 [2일차] 코드 작성하기코드를 작성하기 전에 내가 작성한 코드가 특정 WORKBOOK(엑셀파일)에서만 실행되는 코드인지, 켜져있는 모든 WORKBOOK(엑셀파일)에서 실행될 수 있는 코드인지 그 범위를 생각해두어야 한다. 그 답은 본인만 알고 있을 것이다. 특정 WORKBOOK에서만 실행하기사전에 작성된 문서의 형태와 틀에 맞게 코드를 작성한 경우, 해당 코드는 다른 문서에서 실행하게 되면 원치 않는 결과를 낳게 될 것이니, 리본메뉴에 실행메뉴를 만든다던지 하는 것은 의미가 없다. 이 때는 내가 작성한 코드(프로시저 또는 함수)를 실행하는 버튼을 이미지 또는 버튼 컴포넌트로 특정 시트 영역에 넣어두는 편이 나을 것이다. TAKE #1아래와 같은 WORKBOOK > WORKSHEET가 있다고 하자. 내가 하고자 하는.. 2024. 8. 6.
[엑셀VBA/초보자] 에디터 훑어보기 [1일차] 애증의 VBA 코드언제쯤이었던가, 꽤 오래전 한 유튜브에서 VBA기초강좌 1편을 봤는데, 그걸 보자마자 든 생각은, '어렵지 않구나'라는 생각이었다. VBA는 한줄한줄씩 코드를 읽어내려가는 구조이기 때문에, 개발을 한번도 해보지 않은 사람이 사용하기 편하다. 하지만, VBA를 구글에서 검색해보면, XX년에 없어져야할 언어, 배우지말아야할 언어에 항상 상위권을 두고 있지만, 그런 컨텐츠를 본지도 어언 10여년이 되어가고 있으니, 그들의 말이 틀렸었다고 자신있게 말할 수 있다. 앞으로 이 글에 끄적거릴 내용들은 남을 위해서가 아니라 나를 위해서 적어두는 것이다. 유튜브에 메모차원에서 몇 가지 엑셀 영상을 올려놨는데, 공공의 공간이므로 나름 최대한 공손하게 멘트를 적었으나, 댓글이 달리는 것을 보면.... 참.. 2024. 8. 1.