
VBAのフォーム上のコントロールをクリックして
WebBrowserコントロールを起動しているのですが
画像のような画面がたまに表示されます。
****************************************************
このドキュメントには、コンピューターに害を及ぼす可能性のある埋め込みコンテンツが含まれます。
以下のオプションから1つを選択してください。
コンテンツの再生を許可しません(推奨)
このコンテンツを認識します。再生を許可します。
****************************************************
多分、Navigateするタイミングだと思います。
表示する(Navigateする)サイトは教えてgooなどです。
毎回「このコンテンツを認識します。再生を許可します。」
を選択してるのですが、
面倒なので
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
ANo.4のものですが、即席のファイル名変更プログラムを作りましたので、ご参考までに。
下のプログラムを標準モジュールにコピー&ペーストして下さい。
Public Function FlashFileReName(ReNameFlg As Boolean)
'WebBrowserの面倒なメッセージを出なくするため
'Flashフォルダ内のFlash32**.ocxファイルをリネームする
Dim FldPath As String 'フォルダの設定
Dim FileNameF As String '公式ファイル名
Dim FileNameD As String 'ダミーファイル名
Dim FullPathF As String '公式ファイルのフルパス
Dim FullPathD As String 'ダミーファイルのフルパス
'#== 初期設定 ================================================================
'Flashのフォルダ設定(自身のPCに合ったフォルダを設定して下さい)
FldPath = "C:\Windows\System32\Macromed\Flash\"
'flashのファイル名設定
'必ず自身がお使いのファイル名を設定して下さい
FileNameF = "Flash32_11_6_602_180.ocx" '←公式ファイル名
FileNameD = "Flash32_11_6_602_180.ocx.bak" '←ダミーファイル名
'#==============================================================================
'フルパス設定
FullPathF = FldPath & FileNameF
FullPathD = FldPath & FileNameD
'ファイル名を変更する
If ReNameFlg = True Then
'ダミー名から公式名に変更
Name FullPathD As FullPathF
Else
'公式名からダミーに変更
Name FullPathF As FullPathD
End If
End Function
↑コピーはこの真上までです。
初期設定は必ず行って下さい。
次に、コマンドボタンを作って下さい。
コマンドボタンのクリックイベントに
下記のプログラムをコピー&ペーストして下さい。
'ダミー名から公式名に変更
FlashFileReName (True)
↑コピーはこの真上まで。
もう一つコマンドボタンを作って
下記のプログラムをコピー&ペーストして下さい。
'公式名からダミーに変更
FlashFileReName (False)
↑コピーはこの真上まで。
コマンドのボタン名は自身が分かりやすい名前に。
1つ目は『Flash使用可』や『公式ファイル名に変更』等
2つ目は『Flash一時停止』や『ダミーファイル名に変更』等
そんな感じで作ってみて下さい。
即席モノですので、ファイルの存在確認や
その他エラー回避などは入っておりません。
各自改造して使ってみて下さい。
No.4
- 回答日時:
とりあえず応急処置ですが、以下の方法で例のメッセージは出てこなくなります。
方法は
flashフォルダ(C:\Windows\System32\Macromed\Flash)内にあるFlash32_11_6_602_180.ocxを別の場所か、ファイル名を変える(自分の場合Flash32_11_6_602_180.ocx.bakにしました)と、例のメッセージは出なくなりました。
その代わり、拡張子ocxのFlash32ファイルを元に戻さないと、当然インターネットエクスプローラーやクロームなどで、Flashを見たり操作したりする事は出来ません。
『WebBrowserを動かしている時は、Flashは使わない』と割り切る方にオススメです。
手動でFlash32ファイルの名前を変更したりするのが面倒な方は、WebBrowserを動かす前にFlash32ファイルの名前を変更して、WebBrowserの処理が終わったら、ファイル名を元に戻すプログラムを組んでおけば、楽かと思います。
No.3
- 回答日時:
追伸:ひとつ気がついたことだけれども、WebBrowser のバージョンというものが影響しているように思いますね。
どうも古いExcelからでは、ダイアログボックスが表示されることが多いようです。それから、#1,#2で書いたイベントは、やはり古いバージョンでは上手く行っていません。表示が回数が減るだけでした。No.2
- 回答日時:
#1の回答者です。
Private Sub WebBrowser1_AfterUpdate()
Application.SendKeys "{ESC}"
End Sub
今のところ、これでトラップ(笑)には引っかかっていません。
No.1
- 回答日時:
たぶん、同様の質問は、同じご質問者さんだと思います。
本来、JavaScript やActiveXの操作を止めてしまえばよいのですが、IEオブジェクトを利用しているのに、WebBrowserでは、思うように行きません。教えてgoo に限る話のようです。
それから、これは最近のことだと思います。
そこでWebBrowser のイベントに対して、Sendkeys "{ESC}" を入れてみたらいかがでしょうか。
質問で書かれている内容(コマンド)とは、意味が違うとは思いますが、少なくとも、ダイアログボックスは出現しなくなるはずです。WebBrowserで何かをしようとするなら、以下は役に立たないかもしれません。
Application.Sendkeys "{ESC}"
どのイベントがふさわしいのかは、今のところ検証中です。
どれかがヒットするはずです。
たとえば、
Private Sub WebBrowser1_TitleChange(ByVal Text As String)
や
Private Sub WebBrowser1_AfterUpdate()
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のエクセルファイルが止ま...
-
エクセルのハイパーリンクがコ...
-
frxファイルの役目
-
ファイルをコピーできない
-
[エクセル]コピーするとオブジ...
-
「ファイルが見つかりません D...
-
FTPとファイルコピーの違いにつ...
-
Vba初心者です。下記のコード助...
-
エクセルで複数のコメントのサ...
-
ファイルサーバ上のファイルが...
-
4時間
-
bat 同名ファイルコピー時にリ...
-
EXCELの書式設定のユーザー定義...
-
バッチファイル XCOPYで上書き...
-
開いている別のファイルにExcel...
-
エクセル 同じデータなのに違う...
-
Accessファイルをコピーすると...
-
batでのスタートアップです
-
VB.NETでのネットワーク参照
-
VB6で、Form1をコピーする方法...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで複数のコメントのサ...
-
frxファイルの役目
-
ファイルサーバ上のファイルが...
-
Vba初心者です。下記のコード助...
-
エクセルのハイパーリンクがコ...
-
同じファイル名 上書きしないフ...
-
xcopyでのバッチコピー方法でコ...
-
バッチファイル 別ファイルにリ...
-
[エクセル]コピーするとオブジ...
-
vbsでファイルやフォルダのコピ...
-
バッチファイルのコピーで
-
バッチファイル XCOPYで上書き...
-
現在のブックを閉じないで、マ...
-
bat 同名ファイルコピー時にリ...
-
エクセル2010、図が大きすぎま...
-
アクセス クエリを別のファイ...
-
ハイフネーションされている英...
-
特定のエクセルファイルが止ま...
-
マインクラフトPCをプレイしよ...
-
パワポでスライドをコピーでき...
おすすめ情報