• 締切済み

Web Browserに表示したWebページのボタンを押下したい[VBA]

こんにちは。 Web Browserで、表示したWebページ上のボタンを押下したいと思っています。 どのようにプログラミングすればよいのか教えて下さい。 下記のように、組んでみたのですがダメでした。     ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 'WebブラウザにHPを表示する ActiveXコントロール0.Navigate ("http://~) 'Webブラウザが終わるまで待つ Do Until ActiveXコントロール0.Busy = False DoEvents Loop 'Webブラウザにフォーカスをあてる ActiveXコントロール0.SetFocus '既定のボタンのフォーカスを移動する SendKeys "{TAB}" 'エンターキーを押下する SendKeys "{ENTER}     ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ ボタンにフォーカスを移動するまでは、できたんですが、 エンターキー押下では、ボタンをクリックしたことにならないようです。 IEでは、エンターキーでボタンクリックできるですが、 Web Browserではダメなんでしょうか・・・? ACCESS2000を使用しています。 なにかボタンを押下する方法を教えて下さい。 よろしくお願いします。

みんなの回答

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

過去ログ見て

cotton-tail
質問者

お礼

ありがとうございました。

関連するQ&A

  • コマンドボタンのEnterイベント後に、フォーカスを移動したい。

    コマンドボタンのEnterイベント後に、フォーカスを移動したい。 フォームに「TextBox1」(TabIndex=0)「TextBox2」(TabIndex=1)「CommandButton1」(TabIndex=2)の3つのコントロールがある場合。 CommandButton1がクリックされた場合も、TextBox2からCommandButton1に、タブキーまたはエンターキーで、フォーカスが移った場合にも、同じ処理を行い、処理結果によってTextBox1やTextBox2にフォーカスを移したいと考えています。 以下のようなサンプルを作成しました。 Private Sub CommandButton1_Enter() CommandButton1_Click End Sub Private Sub CommandButton1_Click() MsgBox ("OK") TextBox2.SetFocus End Sub この場合、CommandButton1_Enterのイベントが起こった場合、CommandButton1_Click()のTextBox2.SetFocusは効きません。 (正確には、CommandButton1_Enterイベントが終わった時点で無効でしょうか。) Enterイベントは、フォーカスが移動する前に発生するため、このイベントが終わった後に、そもそもの動作に戻り、フォーカス移動が発生してしまうからなのだと思っております。 要は、コマンドボタンにタブキーやエンターキーでフォーカスしても、コマンドボタンをクリックしたのと同じ処理を行い、所定の位置にフォーカスを持っていきたいのですが、どのように行えば良いか、わからない状況です。 よろしくお願いいたします。

  • VB.NET ボタン押下で一つ前のコントロールへ

    お世話になります。 VisualStudio2010 InputMan6.0 上記を使用して、VB.NETで開発をしております。 いくつかテキスト・コンボコントロールが並んでいるFormで、ボタンを押下することで それまでカーソルがあったコントロールの一つ前のTabIndexがあるコントロールへ カーソルを遷移させたいのですが、うまく動きません。 SelectNextControlを使ってみても、ボタン押下の段階でボタンがActiveなコントロールと なってしまうため、ボタンの一つ前のコントロールにカーソルが移動してしまいます。 うまい方法はないでしょうか?

  • IE操作時、ファイルのダウンロードボタンの押下

    IEをvb.netから操作しています。 webからファイルのダウンロードを自動で行いたいのですが、どのようにすればいいのかわからず悩んでいます。 画像の赤枠で括ってあるボタンの押下を、vb.netからの操作で行いたいのですが、どのようにすれば良いでしょうか。 InternetExplorer.Applicationに何らかのメンバ関数のようなものがあるのか、sendkeysを使うしかないのか、sendkeysを使うなら、具体的にどのキー操作を送れば良いのかなど、お教えいただけないでしょうか。 よろしくお願いします!

  • SSTabのフォーカスの移動について!

    Windows2000、VB6.0、SP5で開発しています。 質問は、SSTabのフォーカス移動についてです。 SSTab上のコントロール上にフォーカスがある時、 Tabでフォーカスの移動をしてると、急にフォーカスが見えなくなってしまうことがあります。 調べてみると、隠れているコントロールに移動してしまってるみたいなんですが、 これは、解決策はないんでしょうか? 最後のコントロールでSetFocusを使うとかあったのですが、その場合、 最後のコントロールにフォーカスがある時に、どのコントロールをクリックしても、 最後のコントロールのSetFocusで設定したコントロールにフォーカスが移動してしまいます。 良い方法をご存知の方、いらっしゃいましたら、 どうぞ、ご教授よろしくおねがいしますm(_ _)m

  • WEBページからのメッセージをVBAで

    いつもお世話になっております。 エクセルVBAでIE制御についてです。 環境はWIN7、IE 9or11とエクセル2010です。 あるページのリンクをクリックすると、 WEBからのメッセージというダイアログボックスが出てきて、 続行しますか? はい いいえ を聞かれます。 その「はい」をVBAで押したいのですが、 sendkeysメソッドで押そうとしてもうまくいきません。 以下に記載したサイトのOKボタンを押すと出てくるものです。 http://kamicha1.web.fc2.com/Excel/Test20090726.html 以下が書いたコードです。 Declare Sub Sleep Lib "KERNEL32" (ByVal dwMilliseconds As Long) Sub test() Dim ie As Object Set ie = CreateObject("InternetExplorer.Application") ie.Visible = True ie.navigate "http://kamicha1.web.fc2.com/Excel/Test20090726.html"        Do While ie.Busy Or ie.readyState < 4 DoEvents Loop ie.document.getElementsByClassName("bt2")(0).Click '-ここで止まる Sleep 2000 SendKeys "{Enter}" End Sub ステップ実行していくと、ここで止まると書いた所で、 IE上にダイアログは表示されるのですが、 それ以上ステップ実行ができなくなってしまいます。 ダイアログを自分でOKかキャンセルで消すと続きが動くようになります。 その間はVBEはビジー状態となり操作できません。 そのためそれ以降のsendkeysメソッドに たどり着けない状況かと思われます。 いろいろ調べたところIE8以降はダイアログボックスは IEから出ているのではなくOS?から出ているとの事でした。 上記のサイトはHTML本体にjavaスクリプトが記載されており、 それをVBAから操作すればどうにかOKボタンが押せるらしいのですが、 自分が操作したいページにはそれらしき記載がありませんでした。 対象のアンカータグは <a herl=URL 中略 data-comfirm=続行しますか? > のような感じで記載がありました。 完全に煮詰まっております。 自動でOKをクリックするかEnterキーでOKを押すでも構いません。 どうかご教授お願いいたします。

  • Webページの観覧で、「セキュリティの設定によりWebサイトによる、・・・と出ます

    「セキュリティの設定によりWebサイトによる、このコンピュータにインストールされているActiveXコントロールの実行は許可されません。 そのためページは正確に表示されない可能性があります。オプションを表示するには、ここをクリックしてください。」 が 頻繁にでるようになり ちょっとうざいです! みなさんも よくでるのでしょうか? 出なくする方法ありますか? 「 ツール 」 メニュー → 「 インターネットオプション 」 の順にクリックします。 「 インターネットのプロパティ 」が表示されるので 「 セキュリティ 」 タブをクリックします。 項目内の 「 レベルのカスタマイズ 」 をクリックします。 表の中の以下の項目を 「 有効にする 」 または 「 ダイアログを表示する 」 にチェックマークを入れ 有効な状態にします。 「ActiveXコントロールとプラグインの実行」 「スクリプトを実行しても安全だとマークされていないActiveXコントロールの初期化とスクリプトの実行」 「スクリプトを実行しても安全だとマークされているActiveXコントロールのスクリプトの実行」 「署名済みActiveXコントロールのダウンロード」 「未署名のActiveXコントロールのダウンロード」 以上の項目にチェックを入れます。 「 OK 」 ボタンをクリックします。 ↑の作業はしたのですが 特に変化もなく困っています! いい方法ないでしょうか?

  • エクセル2010のvbaとコマンドボタンについて

    vbaで押されたコマンドボタンの (ActiveXコントロールのイメージやラベルなど) 名前を取得することはできますか? ActiveControl.NameはSheets(1)をつけると オブジェクトは、このプロパティまたはメゾットをサポートしていません とエラーが出て、Sheets(1).を取るとオブジェクトが必要です とエラーが出て上手くいきません フォームコントロールのボタンは右クリックできないので ActiveXコントロールのコマンドボタンを使用しています 回答お願いします

  • Webページのスクロールボタン。

    よくWebページで、ブラウザのスクロールバーとは違い、独自に作成してある スクロールボタンみたいなものってありますよね? クリックすると下へいったり、もしくはマウスオンするだけで動いたり。 あれはいったいどうやって制御してるんですか? 何で作成しているのでしょうか?

    • 締切済み
    • CSS
  • WEBページでVBAを使う事

    新規にブックを立ち上げて、 アクティブXコントロールのコマンドボタンを置いて、 Private Sub CommandButton1_Click() MsgBox "test" End Sub として、 ファイル名:Book1.htm ファイルの種類:webページ にして、一度ファイルを閉じて、Book1.htmをダブルクリックして開くと IEのブラウザで開かれコマンドボタンが表示されますが押してもmsgboxは表示されません。 WEBページでVBAを使う事は無理なのでしょうか? VBSやjavaスクリプトに書き換えなくてはいけないですか? エクセルで作ったデータベースをそのままWEBにアップしたいのでこのような事が知りたいです。

  • Webブラウザの閉じるボタン無効化についての質問

    お世話になります。 現在、ASP.NET(C#)にてIEブラウザの閉じる(×)ボタンを 非表示にするあるいは無効にする処理を加えようとしています。 現行では、JavaScriptのonbeforeunloadにて閉じるボタン 押下時の処理を加えています。 しかしながら、処理を加えた後閉じるボタンを押下した際に 「このページからほかのページに移動しますか?」確認MSG が表示されてしまいまして、「OK」を押下すると画面が閉じて しまいます。 IEの閉じるボタン無効化の機能が成立しません。 そこで質問としまして、 ・IEブラウザの閉じるボタン無効化 ・IEブラウザの閉じるボタン押下時に表示される  「このページからほかのページに移動しますか?」確認MSG  を非表示にする 方法がございましたら、ご教授お願い致します。