VBA の COM コンポーネント化を目標として C# のお勉強に取り組んでみることにした。VBA だと一旦リリースしたら更新の徹底がほぼ不可能だから。
20 年程前に大胆にも水位予測システムの作成業務で .NET Framework v2 の VB.NET を初めて使って以来である。この間、.NET Framework はマルチプラットフォームの .NET にとって変わり、C# も V2 から V12 に進化している。
とりあえず、この本を BOOKOFF で取り寄せ(税込 220 円)てザっと通読。
次いで手元の PC(Win11)にプリインストールされている .NET Framework v4 の csc(C# 5) で 2, 3 のソースコードを試してみたうえで、やおら最新版の .NET 8.0 SDK と VSCode 用の C# 開発キットをインストール。
インターネットで検索していたところ「C#(.NET 8)から Excel を制御する」という記事を見つけたので、ソースコードをダウンロードして、Excel のタイプライブラリの参照に苦労したものの(普通は Visual Studio Community 2022 の「参照マネージャ」を使うのだが、応用が利かなくなるのと偏屈なので我慢)、何とか VSCode から dotnet コマンドでビルドできた。これの顛末をお知りになりたい方は Qiitaの記事 を御覧下さい。
関連する基礎知識が不足しているうえ、例によって参考事例が少なそうなので、冒頭に掲げた「VBA の COM コンポーネント化」に辿り着くのは困難が予想されるけれど、しばしトライしてみようと思う。