お世話になります。
指定したエクセルファイルが開いているかの確認をしたいと思いますが、
下記のプログラムでエラーが発生します。
Sub Test()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
’指定の物が開かれているかをチェックする
For Each xlBook In xlApp.Workbooks
''見つかったらループを抜ける
If xlBook.Name = "YYYYYYYY.xls" Then
Exit For
End If
Next xlBook
上記のFor ******のとこで
NellReferenceExceptionはハンドルされませんでしたとのエラーが
でます。解決策を教えて頂きたいと思います。
> Dim xlApp As Excel.Application
変数を宣言しただけで、中身をセットしていませんよね。
xlApp が Nothing のままでは、どの Excel を操作すれば良いのか
VB には分かりませんので、NellReferenceException の例外が
発生してしまうことになります。
起動済みの Excel をオブジェクトとして拾うには、
GetObject を使う方法と ROT を辿る方法とがあります。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200907/09070041.txt
http://www.hanatyan.sakura.ne.jp/vbnetbbs/wforum.cgi?no=10324&reno=10323&oya=10322&mode=msgview&page=0
ありがとうございます。
参考にさせて頂きます。
ツイート | ![]() |