はじめに
xlwを使用してC++で自作のワークシート関数(ユーザー定義関数、User-defined functions、UDFs)を作成する方法です。VBAマクロで作成した関数と異なり、高速で処理をすることができます。
XLW - A Wrapper for the Excel API
GitHub - xlw/xlw: git repository for xlw - Excel xlls made easy
xlwは正式リリース版ではないため注意。
作成方法
-
Visual Studio を起動します。
-
参照を押して、「プレリリースを含める」にチェックを入れた後「xlw」を検索。「xlw」が結果に出てくるので選択。「ライセンスの表示」をクリックしてライセンスを確認した後「インストール」を押します。
-
ライセンスへの同意をする場合は「I Accept」を押します。同意しない場合は「I Decline」を押します。同意しない場合は使用できないためここで終了します。
-
リビルドします。これでXLLアドイン
C:\work\xlw\Project1\x64\Debug\Project1.xll
が作成されます。
XLLアドインの登録
作成したXLLアドインを登録して使えるようにします。とりあえず試してみたいだけの場合は「一時的に利用する場合」を参照してください。
常に利用する場合
アドインを解除し一覧から削除する方法
※レジストリから直接削除する場合
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\***\Excel\Add-in Manager
一時的に利用する場合
-
作成したXLLファイル
C:\work\xlw\Project1\x64\Debug\Project1.xll
を実行します。
-
Excelが立ち上がり通知が表示されるので、「このアドインをこのセッションに限り有効にする」を押します。これで完了ですが、ワークシートがないと関数が利用できないため引き続き作業を進めます。