私は、Excel を動的に操作するこの道を探求したいと考えています。
dll などを含めずに、C# アプリケーションで Excel を使用したいと考えています。まず、必要な Excel バージョンがインストールされているかどうかを確認して実行します。
まず、必要なすべてのタイプを取得したいのですが、それらを取得できません:
// works
Type typeExcel = Type.GetTypeFromProgID("Excel.Application");
object excel = Activator.CreateInstance(typeExcel);
object workbooks = typeExcel.InvokeMember("Workbooks", BindingFlags.GetProperty, null, excel, null);
// this doesn't work, returns null
Type typeWorkbooks = Type.GetTypeFromProgID("Excel.Workbooks");
正しい型がないと、メンバーを呼び出すことができません。それで、私は何を間違っていますか?必要なすべてのタイプをロードし、それらがそこにあることを知るにはどうすればよいですか? 私の現在のエクセルのバージョンは2003です。
理由:ターゲット システムにインストールされていない COM ライブラリを含めると、アプリケーションが起動しません。それらを動的にロードすると、それらの存在を確認し、不足している機能についてユーザーに通知できます。