QA@IT
«回答へ戻る

回答を投稿

参照設定に Office PIA 用の COM を一時的にでも加える必要があります。

そうすることによって、インテリセンスは使えるようにはなりますが
メソッドが違うみたいです、例えばRangeを参照する際だと
COM:xlSheets.get_Range(xlSheets.Cells[1, 1],xlSheets.Cells[1, 1])
MSレイトバインド:objSheet.Range("A1")
となるみたいです。
やはりMSサイトに書かれている通りインテリセンス無しで、何度も動作確認を
しながら作成するしかないのでしょうか。

あと、Excel の操作をマクロに記録して、自動生成された VBA のソースを読んで Excel オ
ートメーションの手順を考える、というのを個人的にはよくやります。

C#でCOMオブジェクトを参照している時は、仰るとおりVBAソースから流用出来たのですが

Excel オートメーションは、基本的に Excel VBA のオブジェクトモデルを公開したものです。

ということは、まさにExcelVBAなのかな、試してみます。

じゃんぬねっとさん 渋木宏明(ひどり)さん
回答ありがとうございました。もう少し勉強してみます。

(引用の仕方が解らず可読性に欠けますがご了承下さい;)

投稿者:seg

>参照設定に Office PIA 用の COM を一時的にでも加える必要があります。

そうすることによって、インテリセンスは使えるようにはなりますが
メソッドが違うみたいです、例えばRangeを参照する際だと
COM:xlSheets.get_Range(xlSheets.Cells[1, 1],xlSheets.Cells[1, 1])
MSレイトバインド:objSheet.Range("A1")
となるみたいです。
やはりMSサイトに書かれている通りインテリセンス無しで、何度も動作確認を
しながら作成するしかないのでしょうか。

>あと、Excel の操作をマクロに記録して、自動生成された VBA のソースを読んで Excel オ
>ートメーションの手順を考える、というのを個人的にはよくやります。

C#でCOMオブジェクトを参照している時は、仰るとおりVBAソースから流用出来たのですが

>Excel オートメーションは、基本的に Excel VBA のオブジェクトモデルを公開したものです。

ということは、まさにExcelVBAなのかな、試してみます。

じゃんぬねっとさん 渋木宏明(ひどり)さん
回答ありがとうございました。もう少し勉強してみます。

(引用の仕方が解らず可読性に欠けますがご了承下さい;)


投稿者:seg