【Excel VBA】【高ポイント】

Excel VBAでIEを起動させた場合に(できればvisible=falseで)、
表示された画面に<form>があります。
このフォームの送信ボタンは、<input type="button" onClick="ジャバスクリプト">となっており、
そのジャバスクリプトが処理をするという流れです。
この<input type="button">ですが、nameやidが記述されていません。
こういった<form>がある場合に、VBAの記述でIEにそのボタンを押させることは可能でしょうか?
また、PCのキーボードのEnterキーを押すことでそのボタンを押したことにもなります。
VBAでキーボードのEnterキーを押したことにできれば打開案としてもつかえます(ただしできればvisible=falseで実行可能なものが良いです)
通常ポイントに加えて、ベストアンサーに500ポイントを追加します。
(ただしどのような方法であっても実現可能な案がない場合は追加はありません)
よろしくお願いします!

回答の条件
  • URL必須
  • 1人50回まで
  • 登録:2006/06/22 00:00:46
  • 終了:2006/06/22 02:28:12

ベストアンサー

id:KirakiraHikaru No.1

KirakiraHikaru回答回数354ベストアンサー獲得回数682006/06/22 01:37:50

ポイント1000pt

フォームの送信ボタンが、<form>タグ内の1番目の<input>タグである場合には、下記の方法でクリックさせることができます。

objIE.document.forms(0).getElementsByTagName("input")(0).click

※<form>タグ内の3番目の<input>タグが送信ボタンの場合は、***("input")(2).click


<form>タグ内でなく、ページ内すべての<input>タグを操作する場合は、下記のとおりです。

objIE.document.getElementsByTagName("input")(0).click

IEオブジェクトの操作は下記のサイトがわかりやすいです。

http://www.ken3.org/backno/backno_vba_mokuji.html

id:Nigitama

最高です!

ありがとうございます

やはり私も三流君は見ていましたが、、、

VBAは結構苦手で苦戦していました。

即効&一番乗りということで

合計1000ポイントを進呈させていただきます。

これで基本的に表題に関する質問は終了してしまいますが、

ちなみにVBAでIEを操作するために良い書籍などあれば見てみたいと思いますが、ご存知の方はいるのでしょうか?

2006/06/22 01:46:44

その他の回答(1件)

id:KirakiraHikaru No.1

KirakiraHikaru回答回数354ベストアンサー獲得回数682006/06/22 01:37:50ここでベストアンサー

ポイント1000pt

フォームの送信ボタンが、<form>タグ内の1番目の<input>タグである場合には、下記の方法でクリックさせることができます。

objIE.document.forms(0).getElementsByTagName("input")(0).click

※<form>タグ内の3番目の<input>タグが送信ボタンの場合は、***("input")(2).click


<form>タグ内でなく、ページ内すべての<input>タグを操作する場合は、下記のとおりです。

objIE.document.getElementsByTagName("input")(0).click

IEオブジェクトの操作は下記のサイトがわかりやすいです。

http://www.ken3.org/backno/backno_vba_mokuji.html

id:Nigitama

最高です!

ありがとうございます

やはり私も三流君は見ていましたが、、、

VBAは結構苦手で苦戦していました。

即効&一番乗りということで

合計1000ポイントを進呈させていただきます。

これで基本的に表題に関する質問は終了してしまいますが、

ちなみにVBAでIEを操作するために良い書籍などあれば見てみたいと思いますが、ご存知の方はいるのでしょうか?

2006/06/22 01:46:44
id:KirakiraHikaru No.2

KirakiraHikaru回答回数354ベストアンサー獲得回数682006/06/22 02:02:23

喜んで頂けたようでこちらも感激です。

VBAでIEを操作する方法をまとめて解説しているような書籍は、

私も見たことがありません。

(使用環境が限定的で、IEもコロコロと変わったりするから面倒なのでしょうか?)


IEオブジェクトだけの解説ではありませんが、MSのDHTMLのヘルプを見るといろいろとわかってくるものがあるのではと思います。

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja...


あと、ExcelのVBAでIEを操作するのは結構面倒なので、

本格的なプログラムを作成するのであれば、下記を使うのも良いかもしれません。(WebBrowserコンポーネントを操作)

Visual Studio VisualBasic 2005 Expless(無料版)

http://www.microsoft.com/japan/msdn/vstudio/express/vbasic/

id:Nigitama

>VBAでIEを操作する方法をまとめて解説しているような書籍は、私も見たことがありません。

そうですよねぇ。。。

VBAのコントロールに絞った書籍でさえ余り満足いくものは見かけません。

奥が深すぎて需要も様々で幅広いと、なかなか難しいのでしょうか?

MSのDHTMLは今ちょっと見ています。

知りたいことの核心ではありませんが、なかなか参考になるところだと思います。

ブックマークに追加をしておきます。

また、VBの方ですが、こちらも興味はあるのですが、今回の目的に限って言えば、

「とあるサイトの情報をエクセルに落とし込んでで自動的に管理する」というものなので、

面倒でもエクセルVBAでIE操作はある程度避けて通れなそうです・・・

KirakiraHikaruさんの迅速かつ的確な回答は非常に役に立ちました。

現在、私のPCはVBインストールでカタカタ鳴っている状態です。

夜は長そうですが、頑張ります。

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

2006/06/22 02:20:20

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません