特定のセルを選択した後、次のことを行う注文追跡マクロを作成しようとしています。
- FedEx 出荷追跡などの注文追跡 Web ページを開きます
- Excel スプレッドシートで選択したセルの値を Web ページの適切な検索ボックスに入力します
- クリック送信
別のフォーラムで見つけたサンプル コードを使用して、Excel 2010 で作業しています。このコードは、GIVEN セルの値を貼り付けることを除いて、すべてを実行します。入力する数値または特定のセル値を割り当てることができますが、任意のセルに使用できるユニバーサル マクロが必要です。
アクティブ セルで基本的なコピー ペースト機能をいくつか使用してみました。アクティブなセルを選択してコピーすることはできましたが、検索ボックスに貼り付けることはできませんでした。
問題のあるセクションが特定されたコードを次に示します。
Dim IE As Object
Sub submitFeedback3()
Application.ScreenUpdating = False
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "TrackingWebsite"
Application.StatusBar = "Submitting"
' Wait while IE loading...
While IE.Busy
DoEvents
ActiveCell.Select
Selection.Copy
Wend
' **********************************************************************
delay 1
IE.Document.getElementById("receipt").Click
delay 1
IE.Document.getElementById("receipt").Paste
delay 2
IE.Document.getElementById("submit").Click
'**********************************************************************
End Sub
Private Sub delay(seconds As Long)
Dim endTime As Date
endTime = DateAdd("s", seconds, Now())
Do While Now() < endTime
DoEvents
Loop
End Sub
コードをコピーして貼り付けようとしたとき、DoEvents の下で次を使用しました。
ActiveCell.Select
Selection.Copy