Excel DNAのデバッグ環境作り

F5実行で即デバッグ実行出来る事を目的としたメモ書きです。
VisualStudioのGUIエディタに自分が作成したコントロールデバッグを行いたい場合は、VS.exeをターゲットとしたデバッグと同じやり方です。


■実行環境
 Microsoft Visual Studio 2010 Pro
 Microsoft Office Professional Plus 2010
 FSharp 2.0
 FSharp PowerPack 2.0

ソースコード (F#)
・クラス ライブラリ
※DNAファイルからDLL名を指定するため、DLL名は別名でもよい

module ExcelDnaSamples

open System.Diagnostics
open System.Windows.Forms
open ExcelDna.Integration

[<ExcelFunctionAttribute("MyFunction1")>]
let Msg () =
    let msg = "Hello World"
    Debug.WriteLine(msg)
    MessageBox.Show(msg) |> ignore
    ()

ソースコード (DNA)
ExcelDnaSamples.dna

<DnaLibrary
  Name="FSharp DNA Samples"
  RuntimeVersion="v4.0"
  Language="Microsoft.FSharp.Compiler.CodeDom.FSharpCodeProvider, FSharp.Compiler.CodeDom, Version=2.0.0.0, Culture=neutral, PublicKeyToken=a19089b1c74d0809">

  <ExternalLibrary
      Path="ExcelDnaSamples.dll"
      LoadFromBytes="true" />

  <Image Name="M" Path="M.png" Pack="true" />

  <!-- メニューの追加 -->
  <CustomUI>
    <commandBars xmlns="http://schemas.excel-dna.net/office/2003/01/commandbars">
      <commandBar name="MyCommandBar">
        <button caption="b1" faceId="1695" beginGroup="true"
                onAction="Msg" />
      </commandBar>
    </commandBars>
  </CustomUI>

</DnaLibrary>


■VisualStudio の設定

項目 Path
外部プログラムの開始(X): C:\Program Files\Microsoft Office\Office14\EXCEL.EXE
コマンドライン引数(N): ExcelDnaSamples.xlsx ExcelDnaSamples.xll

■参照設定

  • ExcelDna.Integration
  • System.Windows.Forms
  • 他標準

■プロジェクトに追加したもの

  • ExcelDnaSamples.dna
  • ExcelDnaSamples.xlsx
  • ExcelDnaSamples.xll
  • m.png

※追加したファイルはコピーを行う設定にする。