http://madia.world.coocan.jp/vb/vb_bbs/200407_04070010.html
こちらの書き込みを見ながら、
エクセルファイルの値の取得を行っていました。
マクロを使用していないエクセルファイルの場合、
スムーズにいくのですが、
マクロを使用しているエクセルファイルの場合、
値を取得するたびに「マクロを使用しますか?」のダイアログが出ます。
値取得の時はマクロをいつでも有効にし、
ダイアログが出ないようにしたいのですが、そのようなことはできますか?
WinXPでVB6。Excel2000です。お願いします。
DisplayAlertsを調べて下さい。
Excel.Application.DisplayAlerts = False ではこのメッセージは表示されて
しまうかな(^^;)
GetObject ではなくて .Workbooks.Open を使って開いてみて下さい。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200504/05040060.txt
さくらさん、特攻隊長まるるうさん、ありがとうございます!
Workbooks.Openを使ってみたら、
「マクロ有効無効」のダイアログは表示されなくなりました〜!
ところが、まだ出てくるダイアログがありました・・・。
今度は、他のデータにリンクをはっているエクセルファイルの場合、
値を取得するたびに「リンクを更新するかしないか」のダイアログが出てきます。
このダイアログも非表示にしようとしています。
DisplayAlertsを調べて、次のように作ったのですが、
非表示になりません・・・。
Dim objExcelApp As Excel.Application
Dim objExcelBook As Workbook
Dim strExcelFile As String
Dim strExcelSheet As String
strExcelFile = "エクセルのファイルの名前"
strExcelSheet = "エクセルのシートの名前"
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Application.DisplayAlerts = False
Set objExcelBook = objExcelApp.Workbooks.Open(strExcelFile)
どなたかご指摘お願いします!!
それは Excel 側のユーザの設定を変えてもらわないと難しいかなぁ。
[ツール]メニューの[オプション]をクリックし[編集]タブをクリックします。
[リンクの更新前にメッセージを表示する]チェックボックスをオフにします。
詳しくは Excel のヘルプで『リンクの自動更新』というキーワードで調べて
みて下さい。
まるるうさん、わっかりました〜っ!
そこはユーザ側で何とかしてもらうしかないんですね〜。
さくらさんと、まるるうさんのおかげで、大解決しました!
ありがとうございました〜っ!!
解決されたようですが・・・
Workbooks.Openで引数UpdateLinksを指定してみてはどうでしょう?
うおおおー!すごい〜!
jyuyoさん、ありがとうございます!
引数UpdateLinksを指定したら、ダイアログが表示されなくナリマシター!!
大大大解決でーす!
さくらさん、まるるうさん、jyuyoさん、ありがとうございました〜〜!!
ツイート | ![]() |