ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] VBA¦p¦ó³B²zºô­¶¤¤ªº¿ï¾Ü¶µ¨Ïºô­¶§ó·s

¦^´_ 1# Scott090

http://e-service.cwb.gov.tw/HistoryDataQuery/QueryDataController.do?command=doQueryStation&station_no=467610


    ¨Ò¦p¤W­±´N¬O¡u¦¨¥\¡v¯¸ªº¸ê®Æ¡Aµ²ªG¦p¤U
¦¨¥\ (467610) |121¢X21' 55¡ªE|23¢X05' 57¡ªN|33.5M|»OªF¿¤¦¨¥\Âí¤½¥Á¸ô84¸¹|¤¤¥¡®ð¶H§½

§A¥u­n§â§A·Q­nªº¸ê®Æ¥N½X§ïÅÜ´N·|¦³¤£¦Pªº¦a°Ï¸ê®Æ

¨Ò¦p»O¤¤ (467490)
http://e-service.cwb.gov.tw/HistoryDataQuery/QueryDataController.do?command=doQueryStation&station_no=467490
»O¤¤ (467490) |120¢X40' 33¡ªE|24¢X08' 51¡ªN|84.04M|»O¤¤¥«¥_°ÏºëªZ¸ô295¸¹|¤¤¥¡®ð¶H§½

TOP

¦^´_ 3# Scott090

³£§ä¨ì¥N½X´N¤£­nªá¤ß«ä¤F¡I¥u­n§ï¥N½X´N·|ª¾¹D·Å«×¡A§â·Å«×§ì¤U¨Ó§Y¥i

TOP



´N§â°Ï°ì¥N½X§ï¤@¤U©ñ¦b¤W´Nª¾¹D®×¤F

§¹¥þ¤£¥Îµ¥
  1. Sub EX()
  2. finalrow=Cells(Rows.Count, 1).End(xlUp).Row
  3.     For i = 1 To finalrow
  4.         s = Cells(i, 1)
  5.         URL = "http://e-service.cwb.gov.tw/HistoryDataQuery/QueryDataController.do?command=doQueryStation&station_no=" & s
  6.         With CreateObject("InternetExplorer.Application")
  7.             .Visible = False     '  ¬O§_Åã¥Ü IE
  8.             .Navigate URL
  9.                 Do While .ReadyState <> 4
  10.                     DoEvents
  11.                 Loop
  12.             Set ieDoc = .Document
  13.             Cells(i, 2) = ieDoc.body.innerText
  14.             .Quit
  15.         End With
  16.     Next
  17.     Application.StatusBar = False
  18. End Sub
½Æ»s¥N½X

TOP

¥»©«³Ì«á¥Ñ joey0415 ©ó 2015-1-14 10:14 ½s¿è

¦^´_ 6# Scott090

§ï¦n¤F¡I¬°¤F³o­Ó¤S¾Ç¨ìªF¦è

¤£¹L­nªá¤F¦n¦h®É¶¡
  1. Sub Æ[´ú¸ê®Æ¬d¸ß¨t²Î()

  2.        ActiveSheet.Cells.Clear
  3.        URLb = "http://e-service.cwb.gov.tw/HistoryDataQuery/index.jsp"
  4.        Set ie = CreateObject("internetexplorer.application")
  5.        ie.Visible = True
  6.        ie.Navigate URLb
  7.        Do While ie.readyState <> 4 Or ie.Busy: DoEvents: Loop
  8.         Application.Wait Now + TimeValue("00:00:01") 'µ¥«Ý­¶­±¡A¹L§Ö·|§ä¤£¨ì¸ê®Æ
  9.         x = ie.document.all.tags("option").Length '¬d¸ßselect¦@¦³´X¶µ
  10.       Stop
  11.            For i = 0 To x '¸Óºô­¶ªºoption¿ï¶µ±q0-35

  12.         '---------¡A¤º«Øªºfireevent ªºonchange¥¢®Ä¡A§ï¥Î½Õ¥Îjsªº¤èªk--------
  13.         Set evt = ie.document.createEvent("HTMLEvents")
  14.         evt.initEvent "change", True, False
  15.         Set lst = ie.document.getElementById("station") 'optionªºid¬Ostation
  16.         lst.selectedIndex = i '¦Û°Ê´`Àôoptionªº­È¡A§ä¨ìindex
  17.         lst.dispatchEvent evt

  18.          Do While ie.readyState <> 4 Or ie.Busy: DoEvents: Loop
  19.             Application.Wait Now + TimeValue("00:00:01")
  20. '            Cells(i + 1, 1) = Trim(ie.document.getelementsbytagname("table")(1).innertext)'­Y§ätalbe¬O²Ä¤@­Ó¡A¦ýªÅ¥Õ¹L¦h­n³B²z
  21.             Cells(i + 1, 1) = Trim(ie.document.getelementsbytagname("td")(4).innertext) '­Y§ätd¬O²Ä4­Ó¤U­±¥ç¦P
  22.             Cells(i + 1, 2) = Trim(ie.document.getelementsbytagname("td")(5).innertext)
  23.             Cells(i + 1, 3) = Trim(ie.document.getelementsbytagname("td")(6).innertext)
  24.             Cells(i + 1, 4) = Trim(ie.document.getelementsbytagname("td")(7).innertext)
  25.             Cells(i + 1, 5) = Trim(ie.document.getelementsbytagname("td")(8).innertext)
  26.             Cells(i + 1, 6) = Trim(ie.document.getelementsbytagname("td")(9).innertext)
  27.        Next
  28.                ie.Quit
  29.               ActiveSheet.Cells.EntireColumn.AutoFit     '  ¦Û°Ê½Õ¾ãÄæ¼e
  30.    End Sub
½Æ»s¥N½X

2015-01-14_101343.gif (158.69 KB)

2015-01-14_101343.gif

TOP

        ÀR«ä¦Û¦b : ¤@­Ó¯Ê¤fªºªM¤l¡A¦pªG´«¤@­Ó¨¤«×¬Ý¥¦¡A¥¦¤´µM¬O¶êªº¡C
ªð¦^¦Cªí ¤W¤@¥DÃD