- 締切済み
VB.NET EXCEL操作でのマクロ存在判定方法
VB.NET(VS2005)でのEXCEL操作において、 そのEXCELファイルにマクロが含まれているかどうかを判断することは可能でしょうか? 何か方法があれば教えてください。 (指定したEXCELファイルを開いて印刷処理などをしたいのですが、 マクロがあるとエラーになったりと様々な問題が出てきます。 初めに、そのEXCELファイルにマクロがあるか判断し、 存在する場合は操作しないようにしたいと思っています。) どうぞよろしくおねがいします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- MARU4812
- ベストアンサー率43% (196/452)
回答No.1
お礼
ご回答頂きまして大変ありがとうございます。 “セキュリティが低下”を前提として・・・ EnableEvents というプロパティ設定でマクロを走らせないようにして開き、 例えば、 VBProject の下の命令(ですかね?)のCodeModule.CountOfLinesが1以上だった場合、 「マクロコードが含まれる」という判断はできるということですね。 EnableEventsというプロパティがとてもありがたかったです。 どうやってもマクロが効いた動き方をして困っていましたので。 (プログラムレベルが低い者でして。) ありがとうございます。
補足
すいません、補足 ではないのですが、 EXCELファイルをバイナリモードで開いて、特定文字列が存在すれば“マクロを含む”と判断できる ようなことはできないでしょうか。 マクロもそうですが、パスワード付ファイルかどうかもその方法で調べられないでしょうか。 もし可能なようでしたら、 プログラミングレベルが低いのでサンプルコードご教示頂ければ幸いです。 どうぞよろしくお願いいたします。 VB.NET(VisualStudio2005)、EXCEL2003