C#

간단한 Excel Add-in

VSTO 개발환경

Visual Studio 에서 Office Addin 을 개발하기 위해 Visual Studio Tools for Office (VSTO) 을 설치하여 사용한다. Visual Studio Installer에서 오피스 개발을 위한 VSTO를 체크하여 설치하거나 VS Community Edition과 같이 VSTO가 제공되지 않는 경우는 별도로 https://www.visualstudio.com/vs/office-tools/ 사이트에서 Office Developer Tools 설치한다.

간단한 엑셀 Add-in 작성

Addin을 작성하는 전체 Flow를 익히기 위해 간단한 Excel Addin을 작성해 보자.

  1. Visual Studio를 실행
  2. File => New Project => Visual C# => Office/Sharepoint => VSTO Add-ins => Excel 2013 and 2016 VSTO Add-in 선택
  3. VS 는 프로젝트 템플릿에 의해 자동으로 필요한 파일들을 생성하는데, 메인 C# 파일은 ThisAddin.cs 로서 다음과 같은 기본 코드를 갖는다.

    클래스 ThisAddIn 은 Partial Class 로서 숨겨진 파일 (Hidden File) 인 ThisAddin.Designer.cs 파일에서 여러 멤버 정의(Definition)을 볼 수 있다. 숨겨진 ThisAddin.Designer.cs 파일은 [Solution Explorer] 상단의 [Show All Files] 툴바를 누르면 볼 수 있다.
  4. ThisAddin.cs 에는 2 개의 ThisAddIn 이벤트핸들러 메서드가 정의되어 있는데, 처음 Addin 이 시작할 때 수행되는 ThisAddin_Startup()과 Addin 이 종료될 때 수행되는 ThisAddIn_Shutdown()가 있다.
  5. Excel 에서 새 Workbook 이 오픈되었을 때, 해당 Workbook 의 이름을 메서지박스에 간단히 표시하는 코드를 아래와 같이 구현한다.
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        this.Application.WorkbookActivate += Application_WorkbookActivate;
    }
    private void Application_WorkbookActivate(Excel.Workbook Wb)
    {
        MessageBox.Show(Wb.Name);
    }
    

    Application 은 Excel Application 객체이며, WorkbookActivate 이벤트는 Workbook 이 Activate 되었을 때 실행되는 것으로, 여기에 Application_WorkbookActivate() 메서드를 실행하도록 이벤트 핸들러를 추가하였다.
  6. [F5] 를 눌러 프로그램을 실행한다. 이때 VS 는 자동으로 해당 Addin 을 등록하고, Excel 을 구동시켜 Addin 이 동작되도록 한다. 새 Workbook 을 열어 메시지 박스가 뜨는지 확인한다
  7. 참고로 VS 에서 등록된 Addin 을 삭제하는 하기 위해서는 Build => Clean Solution 을 실행한다.
본 웹사이트는 광고를 포함하고 있습니다. 광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.

Previous Next Print