VBA初心者です。 Excelの各セルの値をIEの各フォームへ入力するマクロ】
未読分:2件
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。
Message#2 2015年1月28日(水)01時59分 From: コールセン | 返事 削除 変更 |
今の処理が動いているのであれば、「ie.Navigate2」から先をループブロックにして、ループさせれば良いだけの話ではないでしょうか(「ie.quit」は最後に持ってくる)。 セルのアドレス、URLをループの数字に応じて変化させるだけです。 |
Message#1 2015年1月28日(水)01時56分 From: korabokette | 返事 削除 変更 |
VBA初心者です。 【Excelの各セルの値をIEの各フォームへ入力するマクロ】 を作っています。 現在のマクロは下記の通りです。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Option Explicit Sub ie_y() Range("A1").Select Selection.Copy Dim ie As Object Set ie = CreateObject("InternetExplorer.application") ie.Visible = True ie.FullScreen = True ie.Navigate2 "http://***" Do Err.Clear On Error Resume Next ie.Document.GetElementsByClassName("●1")(0).Value = Worksheets("Sheet1").Range("B1") DoEvents Debug.Print Err.Number Loop Until Err.Number = 0 ie.Document.forms(1).Item(0).Focus SendKeys " " Call WaitFor(2) SendKeys "^V" Call WaitFor(1) SendKeys "{Enter}" Call WaitFor(1) ie.Document.GetElementsByClassName("●2")(0).Value = Worksheets("Sheet1").Range("C1") ie.Document.getElementsByName("●3")(0).Checked = True ie.Document.getElementsByName("●4")(0).Value = Worksheets("Sheet1").Range("D1") ie.Document.getElementsByName("●5")(0).Checked = True ie.Document.getElementsByName("●6")(7).Checked = True ie.Document.getElementsByName("●7")(0).Checked = True Call WaitFor(5) ie.Document.GetElementsByClassName("●8")(12).Click Dim moji As String Dim moji2 As String moji2 = "保存しました。" Do moji = ie.Document.body.innerText Loop Until InStr(moji, moji2) > 0 ie.Quit Range("E1") = "complete" End Sub ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ セル(A1)(B1)(C1)(D1)の値をIEの各フォームへ入力、フォームを送信、 読み込みが完了したらIEを閉じ、セル(E1)に"complete"と表示。 これを、 セル(A1)(B1)(C1)(D1)の値をIEの各フォームへ入力、フォームを送信、 読み込みが完了したらセル(E1)に"complete"、http://***へ移動、 セル(A2)(B2)(C2)(D2)の値をIEの各フォームへ入力、フォームを送信、 読み込みが完了したらセル(E2)に"complete"、http://***へ移動... と、ループさせることは可能でしょうか? 宜しくお願い致します。 |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降