이번 글에서는 매크로를 만들고 나서 매크로 대화창(Macro Dialog)를 통해서 실행하는 방법에 대해서 알아보도록 하겠습니다. 아래의 과정을 통해서 실행을 할 수 있어요. 한번 따라 해보도록 합시다 1. 엑셀의 Develper 탭 혹은 View 탭으로 이동합니다. 2. Macro를 누르면, Macro 대화창이 나오게 됩니다. 3. 자신이 실행하고자는 Macro를 선택합니다. 여기 예제는 Sheet에 아래와 같이 ShowMeTheMsgBox가 구현이 되어있습니다. 4. 함수를 선택하고, Run 버튼을 누릅니다. Run 버튼을 누르게 되면 관련 함수가 실행이 됩니다. 추가적으로 단축키를 설정하는 방법에 대해서도 알아보도록 하겠습니다. 5. Macro 대화창에서 Options을 클릭합니다. Option을 ..
이 예제에서는 InputBox를 이용하여 사용자로 부터 값을 입력받고, 이에 대한 값을 MsgBox를 통해서 출력하는 방법에 대해서 알아보도록 하겠습니다. VBA에서는 Message Box(메시지박스)를 통해서 Macro가 실행하고 있는 도중에 사용자에게 보여주고 싶은 내용을 보여줄 수 있습니다. 또한 실행 중에 사용자로 부터 특정값을 입력받을 수도 있습니다. 입력은 Input Box(입력박스)를 통해서 사용자로 부터 VBA로 전달됩니다. 이 섹션에서는 InputBox와 MsgBox를 어떻게 사용할 수 있는지에 대해서 알아보도록 하겠습니다. InputBox로 들어온 값을 변수로 넣는 방법도 추가적으로 알아볼께요. MsgBox를 통해서 데이터 출력하기 사용자에게 어떠한 정보를 제공하기 위해서는 메시지박스를..
이 글에서는 RSS 자료를 Excel에서 읽어오는 방법에 대해서 알아보도록 하겠습니다. 엑셀에서 RSS Feeding 기능이 지원이 되느냐고 물으신다면, 당연히 가능합니다 YesYes!!XML Source 기능을 통해서 Excel에서 RSS의 데이터를 가져올 수 있답니다. 엑셀에서 XML을 처리하기위해서는 XML이 무엇인지 알아야 합니다.마이크로소프트에서 XML에 대한 Overview를 제공하고 있네요. 간략히 읽어보시길 바랍니다. (영어에요;;)관련 링크 : https://support.office.com/en-au/article/Overview-of-XML-in-Excel-f11faa7e-63ae-4166-b3ac-c9e9752a7d80 그럼 XML Source 사용 방법에 대해서 알아보도록 할께요...
프로그래밍을 하다보면 특정 동작을 수행하는 알고리즘을 짜야하는 경우가 많습니다. 이러한 알고리즘이 하나의 Main코드에 넣게되면 Main코드가 너무 방대해줘서 코드에 대한 가독성이 떨어지는 문제점을 가지게됩니다. 코딩을 할 때 중요한 포인트중 하나가 가독성인데, 가독성이 높은 코드는 다른사람이 코드를 분석을 할 때 용이하기 때문에 개발에 대한 비용을 줄여주는 이점을 지니게 되죠. 가독성을 높이는 방법중 하나는 특정 알고리즘을 모듈화하는 것입니다. 모듈화를 할 때 대표적으로 사용되는 것이 바로 함수입니다. 함수는 소프트웨어 개발시 (반복되는) 특정 알고리즘을 하나의 함수에 넣어서 그 함수를 반복적으로 재호출하게 사용을 하게 됩니다. 함수를 잘 활용하면 가독성이 높아질 뿐아니라, 코드의 양도 줄이고, 향후 ..
이 글은 VBA 디버깅에 대해서 좀 알아 보려고 합니다. 사용자가 VBA를 통해서 어떠한 코드를 개발할 때, 작성된 VBA 코드가 원활하게 돌아가길 원할겁니다.하지만 개발자나 사용자 모두 사람인지라 한번에 완벽한 코드를 만들 수는 없습니다. 이러한 경우에 우리는 디버깅(Debugging)을 해야 합니다. 디버깅은 코드에 내포된 사용자가 실수한 코드를 수정하는 것을 의미합니다. 제대로된 디버깅은 사용자가 개발한 어플리케이션 혹은 VBA의 문제점을 해결해줍니다. VBA는 다양한 옵션을 통해서 VBA 코드를 디버깅하도록 도와줍니다. 이러한 옵션에 대해서 한번 알아보도록 하겠습니다. 프로시저 실행하기 (단축키 F5) 프로시저를 만든뒤 실행하기 위해서는 마우스 커서를 프로시저 안에 두고 F5를 누릅니다(혹은 Ru..
이전 글에서는 Macro를 Record하는 방법에 대해서 알아보았습니다. 이 글에서는 VBA 코드에서 Hello World를 보여주는 실질적인 코딩을 해보도록 하겠습니다. 아래의 과정을 따라하시면 Hello World라는 문자열을 보여주는 메시지박스를 생성할 수 있습니다. Step1: VBA 에디터를 엽니다. 단축키는 Alt + F11입니다. 단축키를 누르면 아래와 같은 화면을 볼 수 있습니다. Step2: VBAProject라 되어 있는 부분에서 오른쪽 마우스버튼을 눌러 Insert - Module을 선택하여 모듈을 추가합니다. 여기서 모듈은 함수의 집합이라고 할 수 있습니다. 우리는 이 모듈에 메시지박스를 보여주는 함수를 추가할 것입니다. VBA에서의 함수는 Sub 프로시저와 Function 프로시저..
이번글에서는 설정한 매크로에 대해서 디버깅하는 방법과 코드 수정하는 방법에 대해서 알아보도록 하겠습니다. VBA나 매크로를 원활하게 사용하기 위한 프로그래밍의 가장 중요한 점은 디버깅입니다. 디버깅을 잘해야 원하는 결과물을 만들어 낼 수 있습니다. 하지만 초급자 입장에서 디버깅을 하기가 쉽지는 않죠. 하지만 VBA는 엑셀 내부의 함수를 대부분 사용하기 때문에 관련 문법과 함수 사용법이 눈에 익기만 하면 다른 언어보다는 쉽습니다. 에러가 발생하는 이유도 제한적이기구요. 추후에 디버깅을 하는 방법에 대해서 자세히 다뤄볼텐데요. 이 글에서는 간단히 어떤식으로 코드가 흘러가는지를 보는 정도만 언급을 하도록 하겠습니다. 수정 부분도 간단히 할 겁니다. 겁먹지마세요 ^_^ 궁금한 점이 있으시면 언제든 물어보시면 답..
이전 글에서 엑셀에서 간단히 매크로를 설정하고 사용하는 방법에 대해서 알아보았습니다. 못보셨다구요? 그럼 이전글부터 한번 보고 오시죠!! ^-^/ 2015/09/06 - [IT Info/Excel And Macro] - 엑셀에서 매크로(Macro) 사용하는 방법 이 글에서는 위의 방법으로 설정한 매크로를 제대로(?) 저장하는 방법에 대해서 알아보도로 하겠습니다. 사용자가 설정한 매크로는 엑셀을 저장하게 되면 엑셀 내부에 저장이 되게 됩니다. But, 저장을 하고자 Save 버튼을 눌러서 파일이름을 지정하고 저장버튼을 누르면 아래와 같은 창이 뜨게됩니다. 창이 뜨거나 하면 당황스럽죠. 내가 멀 잘못했나 싶기도 하고...이럴땐 당황하지 말고, 아래의 방법으로 해결하시면 됩니다. 내용을 정리하면, 현재 파일에..
Excel 매크로는 마이크로소프트 엑셀의 가장 유용한 툴 중 하나입니다. 사용자는 매크로를 이용하여 자동적으로 원하는 Task를 만들 수 있습니다. 이 툴은 자동화에 대한 Task 생성에 대한 시간을 절약하여 주고, 직접 프로그래밍시 생길 수 있는 사용자 에러를 제거합니다. 사용자가 Excel VBA에 대해서 잘 알지 못하더라도, 매크로를 이용하여 Task를 자동화 할 수 있습니다. 매크로 녹화 버튼을 누른뒤 사용자가 추가하는 대부분의 작업을 자동적으로 추가할 수 있습니다. (모든 기능이 되는 건 아닙니다.) 사용자는 VBE(Visual Basic Environments)를 통해서 원하지 않는 코드를 삭제할 수 있습니다. 이에 대한 내용은 추후 설명드리겠습니다. 아래의 예제를 통해서 Excel 매크로를 ..
VBA 환경은 VBE라고 말합니다. 사용자가 VBE를 열수 있는 방법은 2가지가 있습니다. 사용자는 개발자 탭을 통해서 Visual Basic에 대한 VBE를 열수 있습니다. 또한 Alt + F11을 누름으로써도 VBE를 열수 있습니다. 아래의 그림은 개발자 툴에서 VBA를 여는 방법입니다. (제 PC에 설치된 엑셀이 영문판이라, 헷갈리신 다면 죄송합니다 ㅠㅠ) 위의 Visual Basic 버튼을 누르게 되면 아래와 같은 개발 환경이 뜹니다. 물론 ALT + F11을 눌러도 동일한 결과를 볼 수 있습니다. 우리는 위의 화면을 VBA 환경 혹은 VBA 통합 개발 환경(VBA Integrated Development Environment)이라고 부른답니다. VBA 통합 환경: VBA 에디터(VBA Edito..
VBA는 MS Office Application에서 사용하는 프로그래밍 언어입니다. VBA는 Visual Basic for Application의 준말입니다. 이 언어는 사용자가 원하는 특정 Task를 자동화 해준다는 장점을 가지고 있습니다. 많은 시간동안 사용자는 동일한 업무를 매일 처리합니다. 이러한 부분을 VBA는 자동화하여 사용자에게 편의성을 제공하게 됩니다. VBA의 소개 VBA는 MS Office Tool(Excel, Word, PowerPoint,Outlook,Access)의 일반적인 언어입니다. 만약 사용자가 VBA를 배우고자 한다면, 사용자는 MS Office Tool을 자동화 할 수 있고, 각 툴의 Object Model만 변경함으로써 각 툴을 사용할 수 있습니다. VBA를 왜 배워야 ..