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

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

java - Copying object fields -

c++ - Clear the memory after returning a vector in a function -