excel - Macro to Change Dates and Generate Spreadsheet on Website -
there website routinely use generate spreadsheet. items on website "start date" field, "end date" field, , "go" button. after enter date range , click "go" downloads .cfm file, click open excel, excel warns file has different extension , verifies it's not corrupted , click open , have data need , there have macro maniupulate needed. i'm looking automate steps:
go website change start date change end date click go click open file agree open different extension
the macro i've used before data website copies , pastes data visible on specific url , follows. manipulate url on input spreadsheet manipulate data.
dim addws worksheet set addws = sheets.add(before:=sheets("input")) addws.name = "website data" dim myurl string myurl = worksheets("input").range("g4") worksheets("website data").querytables.add(connection:= _ "url;" & myurl, _ destination:=range("a3")) .backgroundquery = true .tablesonlyfromhtml = true .refresh backgroundquery:=false .savedata = true end
thank you.
the following code works me. have change "startdate" , "enddate" depending on how specific website names input boxes.
sub test_fetch() dim ie object dim objelement object dim objcollection object dim long dim doc object, lastrow long, tbltr object set ie = createobject("internetexplorer.application") ie.visible = true ie.navigate "http://your_website" while ie.busy application.wait dateadd("s", 1, now) loop application.statusbar = "fetching website data. please wait..." set objcollection = ie.document.getelementsbytagname("input") = 0 while < objcollection.length if objcollection(i).name = "startdate" ' set text start date objcollection(i).value = "09/15/2013" elseif objcollection(i).name = "enddate" ' set text end date objcollection(i).value = "09/21/2013" else if objcollection(i).type = "submit" , _ objcollection(i).name = "" ' "search" button found set objelement = objcollection(i) end if end if = + 1 wend objelement.click ' click button search end sub
Comments
Post a Comment