ExcelのVBAで、A1~A10 のセルに入っている数値を下記 URL の「お問い合せ番号」の入力欄に自動でセットして、「検索」のボタンを押したいのですが、方法が分かりません。
http://www2.fukutsu.co.jp/inq/INQJJ120.html
下記のプログラムで表示までは出来るのですが、それから先の入力とボタンクリックの方法が分かりません。
何かアドバイスを頂けると幸いです。
> Dim oIE As Object
>
> 'IE起動
> Set oIE = CreateObject("InternetExplorer.Application")
> oIE.Visible = True
>
> '目的のURLへ
> oIE.Navigate "http://www2.fukutsu.co.jp/inq/INQJJ120.html"
>
> '完全表示まで待つ
> While oIE.Busy: Wend
> While oIE.document.readyState <> "complete": Wend
No.2ベストアンサー
- 回答日時:
#15日から拝見しておりますが、#1 さんからのお返事がないようですので、ちょっと横から口出しさせていただきますね。
そもそも、#1 さんのご回答は、ちょっと示唆深いように見受けられるのですが、
>例えば~~でしたら
とお書きのように、そのままやってしまうと NG ですね。
>上記の2つを試したのですが、以下のエラーが出ます。
ちゃんとお示しの URL の html ソース をご覧になりましたか?
そこには、「name="toino"」なんて記述はありませんよね。
お示しの URL の場合は、
<FRAME src="INQJJ120.jsp" name="INQJJ120" marginwidth="1">
と書いてあるところが、
>「お問い合せ番号」の入力欄
の実態です。
実際には、
http://www2.fukutsu.co.jp/inq/INQJJ120.jsp
という ページ になりますが、この ページ の html ソース には、#1 さんがお書きの コード がそのまま出ております。
ですから、
http://www2.fukutsu.co.jp/inq/INQJJ120.jsp
の ページ を読み込むようにすれば、「oIE.Document.all.toino」が有効になります。
>なお、「 toino 」という名前は、
>10個の入力欄すべてに同じ名前が付けられているので、
>今回の指定方法では特定出来ないような気がするのですが。
その通り! ちゃんと、ぃぃトコロに気が付いていらっしゃるではないですか。
「oIE.Document.all.toino」のままでは単なる "[Object]" ですね。
[デバッグ(D)] - [ウォッチ式の追加(A)...] で、[式(E):] に「oIE.Document.all.toino」を入力して、[OK] してみてください。
ページ を読み込んだ段階で ウォッチ ウィンドウ を見ると、「oIE.Document.all.toino」の左の「+」を クリック すると、配下に
length 10
Item 1 ~ 10
というものが見てとれます。
これが
>「お問い合せ番号」の入力欄
ですね。
oIE.Document.all.toino.Item(1)
あるいは、単に
oIE.Document.all.toino(1)
で、実態を掴むことができます。
ただし、「Item 1 ~ 10」とはなっていますが、配列の引数は「0」から始りますので、「Item 1」は「oIE.Document.all.toino(0)」になります。
さて、
> 実際には、
>http://www2.fukutsu.co.jp/inq/INQJJ120.jsp
>という ページ になります
と書きましたが、お示しの VBA コード の「oIE.Navigate」の後に、この URL を指定してやるのが簡単かとも存じますが、このような作りの ページ(フレームページ)の場合は、
oIE.Document.frames(1)
で
<FRAME src="INQJJ120.jsp" name="INQJJ120" marginwidth="1">
を掴むことができます。
従って、お示しの VBA コード のままで行くと、
oIE.Document.frames.Item(1).Document.all.toino(0).Value = "ほげげ"
でイケマスね。
# suffre さん、大きなお節介失礼いたしました。
# <(_ _)>
DOUGLAS_ さん、ありがとうございます!
ばっちり、目的を果たす事が出来ました! 感謝、感激です!
「ウルトラスーパーベストアンサー」の指定をさせて頂きたい程です。
重ねて、お礼申し上げます。 ありがとうございました。
No.1
- 回答日時:
入力は、例えば
<INPUT type="text" size="20" maxlength="13" name="toino" value="">
でしたらnameがtoinoなので、
oIE.Document.all.toino.Value = "ほげげ"
で、ボタンクリックは
<INPUT type="submit" name="btn1" value="検 索" onClick="return search()">
のnameがbtn1なので、
oIE.Document.all.btn1.Click
で行けます。
suffre さん、ご回答ありがとうございます。
oIE.Document.all.toino.Value = "ほげげ"
oIE.Document.all.btn1.Click
早速、上記の2つを試したのですが、以下のエラーが出ます。
実行時エラー '438':
オブジェクトは、このプロパティまたはメソッドをサポートしていません。
何か環境的にすべき事があるのでしょうか?
なお、「 toino 」という名前は、10個の入力欄すべてに同じ名前が付けられているので、今回の指定方法では特定出来ないような気がするのですが。
なにかアドバイスがございましたら、よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Excel(エクセル) エクセルVBA、間違っているコード内容を正して頂けませんか? エクセルワークシートに納品書を作ったの 2 2023/08/02 21:13
- Excel(エクセル) 【エクセルマクロ】既に開いているIEの、サイズや表示位置を変更するには 4 2022/12/01 22:57
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) EXCEL VBAで NHK NEWSの NEWSデータ内容取得が できない 1 2023/04/09 12:26
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SUN BBSの改造方法
-
wordの数式について 定積分を書...
-
WEBページを強制的に横画面で見...
-
「value」に2つの値をセットす...
-
VB初心者。小数点以下の表示で...
-
[HTML]プルダウンメニューの横...
-
FORMのselectの選択肢を最初か...
-
INPUT TYPE
-
チェックボックスの返す値
-
ローカルテストサーバーと本番...
-
perlで自動ログインをしたいが...
-
IEで「file://」プロトコルが使...
-
EXCELとの連携
-
ディレクトリのファイル数取得
-
VB.net データーグリッドビュー...
-
selectboxの画面遷移で、postデ...
-
ラジオボタンが両方とも選択で...
-
一つの検索窓で複数のサイトか...
-
サーバーのテキストファイルを...
-
『数字の3桁毎にカンマを付け...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SUN BBSの改造方法
-
tracert ができない原因
-
perlで書いたcgiでsqliteの使い...
-
html文を書く時の print の中の...
-
sendmail -fオプションの指定は...
-
リストに何も無ければXXを表示…
-
cgiによる文字入力数の制限につ...
-
CGI(Perl)内での必須項目チェ...
-
メールマガジンで「○○さんこん...
-
入力フォームに全角・半角スペ...
-
DataGridViewの行取得
-
wordの数式について 定積分を書...
-
ラジオボタンが両方とも選択で...
-
掲示板(kentさんの所のsunbbs...
-
「value」に2つの値をセットす...
-
select値をhiddenのvalueに渡し...
-
チェックボックスの返す値
-
WEBページを強制的に横画面で見...
-
VB.net データーグリッドビュー...
-
プログラミングについての質問...
おすすめ情報