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

[µo°Ý] ¦bºô­¶©â¨ú¸ê®Æ®É¹J¨ì¡u¨S¦³¨Ï¥ÎÅv­­¡vªº°ÝÃD

[µo°Ý] ¦bºô­¶©â¨ú¸ê®Æ®É¹J¨ì¡u¨S¦³¨Ï¥ÎÅv­­¡vªº°ÝÃD

¥»©«³Ì«á¥Ñ ¤p«L«È ©ó 2016-12-8 10:33 ½s¿è

¥H¤U¬O§Ú¦bºô¯¸©â¨ú¸ê®Æ®É¥ÎªºCODE
  1. Sub test()
  2. Dim http As Object, i As Integer

  3. Set http = CreateObject("InternetExplorer.Application")

  4. With http

  5. For i = 1 To 100

  6.     .Navigate "http://www.hkexnews.hk/sdw/search/search_sdw.asp"
  7.     .Visible = True
  8.     Do While .readyState <> 4
  9.         DoEvents
  10.     Loop
  11.    
  12.     .document.getelementbyid("ddlShareholdingDay").Value = 30
  13.     .document.getelementbyid("ddlShareholdingMonth").Value = 11
  14.     .document.getelementbyid("ddlShareholdingYear").Value = 2016
  15.     .document.getelementbyid("txtStockCode").Value = Format(Cells(i, 1), "00000")
  16.     .document.getelementbyid("btnSearch").Click
  17.    
  18.    
  19.     Do Until InStr(.document.body.innerhtml, "pnlResult") > 0
  20.         DoEvents
  21.     Loop
  22.     Set A = .document.getelementbyid("pnlResult")

  23.     Do Until InStr(result, "Remarks:") > 0
  24.     DoEvents
  25.     result = A.innerhtml
  26.     Loop

  27. Debug.Print Cells(i, 1)

  28. Next i

  29. End With

  30. End Sub
½Æ»s¥N½X
³Ìªì¹B¦æ¬O¨S¦³°ÝÃD¡A¦ý·í§ÚªºLOOPING¦æ¤F¤Q¦h¦¸«á¡A§Ú´N·|¹J¨ìERROR¡A»¡§Ú¡u¨S¦³¨Ï¥ÎÅv­­¡v¡AµM«áµ{¦¡«K¦b¡uSet A = .document.getelementbyid("pnlResult")¡v°±¤î¡C¦pªG§Ú¦b¦¹®É«öF8¡Aµ{¦¡¬O¥i¥HÄ~Äò¹B¦æ¡C
©ó¬O§Ú¦b·Q¬O¤£¬O¦]¬°§Úªº¤W¤@¥y¡G¡u.document.getelementbyid("btnSearch").Click¡v¡Aºô­¶redirect¨ìµ²ªGºô­¶¡A»Ý­n®É¶¡²£¥Íhtml code¡A¾É­P§Ú¦æ set A¨º¤@¥y®É¡Aºô­¶ÁÙ¨S¦³pnlResultªºitem¡C©ó¬O§Ú«K¥[¤W¤F¡G
  1.     Do Until InStr(.document.body.innerhtml, "pnlResult") > 0
  2.         DoEvents
  3.     Loop
½Æ»s¥N½X
¥ýÀˬdhtml code¤¤¦³¨S¦³¡upnlResult¡v¤~set A¡A¥i¬O°ÝÃD¤´µM¦s¦b¡A§Ú¤´µM»Ý­n¤H¤â­«±Òµ{¦¡¡C½Ð°Ý¦U¦ì¦³¨S¦³¤èªk¸Ñ¨M¡HÁÂÁ¤j®a¡C

test.zip (14.79 KB)

¥»©«³Ì«á¥Ñ ¤p«L«È ©ó 2016-12-13 10:56 ½s¿è
¦^´_  ¤p«L«È
stillfish00 µoªí©ó 2016-12-8 13:45



    ¨S·Q¨ì­ì¨Ó¥i¥H¥ÎERROR HANDLINGªº¤èªk¡AÁÂÁ¤j¤j¡C¦ý§Ú¨Ï¥Îerror handle®É¦]¬°¤U­±ªº¤p°ÝÃD¦Ó¥X¿ù¡A©Ò¥H§Ú¥u¯à¥Îsleepªº¤èªk¡A¨S¦³¥Îerror handle
¤@­Ó¤p°ÝÃD¡A¦pªGµ{¦¡´M§ä¨S¦³¸ê®Æªº½s¸¹¡A¨Ò¦p¡G¡u820¡v¡Aºô­¶·|¦³pop-up msgbox»¡¡G¡uStock code 820 does not exist ... ¡v¡A©Ò¥H§Ú·Q¥ýÀˬdhtml¦³¨S¦³¡udoes not exist ¡vªº¦r²´¡A¦pªG¦³§Ú«K¸õ¨ì¤U¤@°¦¡C
¦ý¥i¯à¦]¬°pop-up msgboxªºÃö«Y¡A§Ú¤U¤@­Óloop¨«¨ì¡u.Navigate "http://www.hkexnews.hk/sdw/search/search_sdw.asp"¡v®É·|Åã¥Ü¡u-2147024726   VBAProject    'Navigate' ¤èªk ('IWebBrowser2' ª«¥ó) ¥¢±Ñ¡v
  1. Sub test()
  2. Dim http As Object, i As Integer

  3. Set http = CreateObject("InternetExplorer.Application")

  4. With http

  5. For i = 1 To 100

  6.     .Navigate "http://www.hkexnews.hk/sdw/search/search_sdw.asp"
  7.     .Visible = True
  8.     Do While .readyState <> 4
  9.         DoEvents
  10.     Loop
  11.    
  12.     .document.getelementbyid("ddlShareholdingDay").Value = 30
  13.     .document.getelementbyid("ddlShareholdingMonth").Value = 11
  14.     .document.getelementbyid("ddlShareholdingYear").Value = 2016
  15.     .document.getelementbyid("txtStockCode").Value = Format(Cells(i, 1), "00000")
  16.     .document.getelementbyid("btnSearch").Click

  17.    sleep 2000

  18.                 result = http.document.body.innerhtml
  19.                
  20.                 If InStr(result, "Network Error") > 0 Then
  21.                     MsgBox "Website error"
  22.                     GoTo out
  23.                 End If
  24.                
  25.                 If InStr(result, "does not exist OR not available for enquiry") > 0 Then
  26.                     GoTo nextd
  27.                 End If
  28.    
  29.     Do Until InStr(result , "pnlResult") > 0
  30.         DoEvents
  31.     Loop
  32.     Set A = .document.getelementbyid("pnlResult")
  33.    result = A.innerhtml

  34.     Do Until InStr(result, "Remarks:") > 0
  35.     DoEvents
  36.     result = A.innerhtml
  37.     Loop

  38. Debug.Print Cells(i, 1)

  39. Next i

  40. End With

  41. End Sub
½Æ»s¥N½X
½Ð°Ý¦³¨S¦³¤èªkÃö±¼IEªºpop-up msgbox¡HÁÂÁÂ

TOP

        ÀR«ä¦Û¦b : ­×¦æ­nô½t­×¤ß¡AÂǨƽm¤ß¡AÀH³B¾i¤ß¡C
ªð¦^¦Cªí ¤W¤@¥DÃD