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

[µo°Ý] ºô¸ô¸ê®Æ¤U¸ü°ÝÃD¡A

[µo°Ý] ºô¸ô¸ê®Æ¤U¸ü°ÝÃD¡A

¥»©«³Ì«á¥Ñ GBKEE ©ó 2014-11-21 17:14 ½s¿è

GBKEE¤j¤j¡A¤§«e¦³¬Ý±zÀ°§U¸Ñ¨M¦b¤½¶}¸ê°TÆ[´ú¯¸§ì¸ê®Æªº¤å

§Ú»Ý­n§ì¨ú¤½¥qªº°]°È¸ê®Æ(ºô§}¦p¤U)

http://mops.twse.com.tw/mops/web/t164sb04

³z¹LGBKEE¤j¤jªº«ü¾É¡A§Ú¥i¥H¥ÎVBA Excel§ì¨ì«Dª÷¿Ä¤½¥qªº¸ê®Æ(µ{¦¡½X¦p¤U)

        Dim Ie, Doc As Object, i, j As Long

        Set Ie = CreateObject("InternetExplorer.Application")
   
        With Ie
   
        Ie.Navigate "http://mops.twse.com.tw/mops/web/t164sb04"
   
        Ie.Visible = True
   
           Do While Ie.Busy Or Ie.ReadyState <> 4: DoEvents: Loop

        .Document.getelementbyID("isnew").Value = "true"    '³Ì·s¸ê®Æ = true, ¾ú¥v¸ê®Æ = false
        .Document.getelementbyID("co_id").Value = "2888"    'ªÑ²¼¥N¸¹
        .Document.getelementbyID("year").Value = Year        '¦~«×
        .Document.getelementbyID("season").Value = Quarter   '²Ä¤@©u = 01, ²Ä¤G©u = 02, ²Ä¤T©u = 03, ²Ä¥|©u = 04
        
        For i = 0 To .Document.getElementsByTagName("input").Length - 1
            
            If .Document.getElementsByTagName("input")(i).Type = "button" And .Document.getElementsByTagName("input")(i).Value = " ·j´M " Then
               
                .Document.getElementsByTagName("input")(i).Click
            
            End If
        
        Next


¦ý¸I¨ì­n¤U¸üª÷¿Ä¤½¥qªº°]³ø´N¥d¦í¤F¡A§Ú¤£ºÞ«ç¸Õ¡A´N¬O¶i¤£¨ì²Ä2¼h(¦p¤Uµe­±)

¤W­±ªºµ{¦¡½X¤£·|ª½±µ¶]¥X°]³ø¡A¥u·|¦C¥Xª÷¿Ä¤½¥q¬ÛÃö¤½¥q¸ê°T¡C¥²¶·¦A¦¸ÂI¿ï"¸Ô²Ó¸ê®Æ"¤~¯à¥s¥X°]³ø¸ê®Æ

[attach]19616[/attach]




¤£ª¾¹DGBKEE¤j¤j¯à§_À°¦£¬Ý¤@¤U

·P®¦

¦^´_ 6# GBKEE

    ¤Ó¦n¤F!!¤£¥ÎÂI¿ï´N§¹¦¨ (ÁÂÁÂ!!
§Ú±oºCºC¬ã¨s~¬ã¨s~  ^^!!

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2014-11-23 16:02 ½s¿è

¦^´_ 5# HSIEN6001
¸Õ¸Õ¬Ý
  1. Dim ºô­¶ As Object, Ar1 As String, xPath As String
  2. Sub EX_¦Û°Ê()
  3.     Dim i As Integer, k As Integer, AR() As String, j As Integer
  4.     xPath = "d:\"      '¦sÀɦì¸m,¦Û¤v­×¥¿¤@¤U
  5.     Ar1 = ""
  6.     ¦~«× = "103"
  7.     ©u´Á = "3"
  8.     ¥N¸¹ = "2880"
  9.     Set ºô­¶ = CreateObject("InternetExplorer.Application")
  10.     With ºô­¶
  11.         '.Visible = True
  12.         .Navigate "http://mops.twse.com.tw/mops/web/t164sb04?'encodeURIComponent=1&step=1&firstin=ture&off=1&keyword4=&code1=&TYPEK2=&checkbtn=&queryName=co_id&TYPEK=all&isnew=false&co_id=" & ¥N¸¹ & "&year=" & ¦~«× & "&season=" & ©u´Á
  13.                
  14.         Do While .Busy Or .readyState <> 4: DoEvents: Loop
  15.         If InStr(.Document.body.innertexT, "¬dµL¤½¥q¸ê®Æ") Then
  16.             MsgBox ¥N¸¹ & "  : ¬dµL¤½¥q¸ê®Æ!"
  17.             .Quit
  18.             End
  19.         End If
  20.         '****************   Åª¨ú ª÷±±ªÑ¤l¤½¥q¦WºÙ
  21.         With .Document.getElementsByTagName("TABLE")(11)
  22.             ReDim AR(1 To .Rows.Length - 1)
  23.             For i = 1 To .Rows.Length - 1
  24.                 For j = 0 To .Rows(i).Cells.Length - 2
  25.                     AR(i) = AR(i) & IIf(AR(i) <> "", "-", "") & .Rows(i).Cells(j).innertexT
  26.                 Next
  27.             Next
  28.         End With
  29.         '*****************************
  30.         Set A = .Document.getElementsByTagName("INPUT")
  31.         i = 1
  32.         For E = 0 To A.Length - 1
  33.             If A(E).Value = "¸Ô²Ó¸ê®Æ" And A(E).Type = "button" Then
  34.                 A(E).Click   '¦³"¸Ô²Ó¸ê®Æ" ª÷±±ªÑ¤l¤½¥qªº«ö¶s
  35.                 Do While ºô­¶.Busy Or ºô­¶.readyState <> 4: DoEvents: Loop
  36.                 If InStr(.Document.body.innertexT, "¬dµL") = 0 Then  'ª÷±±ªÑ¤l¤½¥q¦³¸ê®Æ
  37.                     IE_Table AR(i)  '°Ñ¼Æ¶Ç»¼:ª÷±±ªÑ¤l¤½¥qªº¦WºÙ
  38.                 End If
  39.                 For Each Img In .Document.getElementsByTagName("img")
  40.                         'http://mops.twse.com.tw/mops/web/images/bu_05.gif ¦^¤W­¶ªº¹Ï¤ù
  41.                     If Img.href = "http://mops.twse.com.tw/mops/web/images/bu_05.gif" Then
  42.                         Img.Click
  43.                         Do While ºô­¶.Busy Or ºô­¶.readyState <> 4: DoEvents: Loop
  44.                         Exit For
  45.                     End If
  46.                 Next
  47.                 i = i + 1 '¤U¤@­Ó ª÷±±ªÑ¤l¤½¥q
  48.             End If
  49.         Next
  50.         .Quit
  51.     End With
  52.     MsgBox Ar1 & vbLf & "¦sÀÉ " & UBound(Split(Ar1, vbLf)) + 1 & " ­Ó   §¹²¦", , AR(1)
  53. End Sub
  54. Private Sub IE_Table(co_id As String)
  55.     Dim A As Object, i, k, j
  56.     Do
  57.      Set A = ºô­¶.Document.getElementsByTagName("table") '(12)
  58.     Loop Until Not A Is Nothing And A.Length >= 14
  59.     Set A = A(12)
  60.     With Workbooks.Add(1)
  61.         For i = 0 To A.Rows.Length - 1
  62.             k = k + 1
  63.             For j = 0 To A.Rows(i).Cells.Length - 1
  64.                 .Sheets(1).Cells(k, j + 1) = A.Rows(i).Cells(j).innertexT
  65.             Next
  66.         Next
  67.         If Dir(xPath & co_id & ".xls") <> "" Then Kill (xPath & co_id & ".xls")
  68.         .SaveAs Filename:=xPath & co_id & ".xls"
  69.         .Close
  70.     End With
  71.     Ar1 = Ar1 & IIf(Ar1 <> "", vbLf, "") & co_id
  72. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 4# wahaha6666
§Ú°õ¦æ¨S°ÝÃD³á! ¥i¯à§A¨S¦³·dÀ´¬yµ{
(°w¹ï¦³¸ê®Æ¥h°õ¦æ,¨S¸ê®Æªºª½±µÃö³¬ºô­¶,­«·sµ{§Ç)

(1)°õ¦æµ{¦¡ (²Ä1¦¸¶}±Òºô­¶)
(2)ºô·~¶}±Ò«á......28800001­n«ö¤U¥h,¤~·|¥´¶}¸ê®Æ¤º®e   (¥Ø«e2880¨S¸ê®Æ,ÂI¤U¥h,¨S¸ê®Æ´NÃö³¬ºô­¶¦A­«·sµ{§Ç)
(3)°õ¦æµ{¦¡(²Ä2¦¸¤U¸üºô­¶ªí®æ)
(4)¤w¸g¤U¸ü§¹¦¨,¨ÃÃö³¬ºô­¶.

°]³ø.rar (11.59 KB)

TOP

ÁÙ¬O¨S¿ìªk¡C´N·|¥d¦b³o¤@­¶¡C¶i¤£¥h°]°È¸ê°T·~­±


¤½¥q¥N¸¹

¤½¥q¦WºÙ


2880 µØ«nª÷  
28800001 µØ«n»È¦æ  
28800002 µØ«n¥Ã©÷  
28800004 µØ«n«O  
28800005 µØ«n§ë«H   
28800006 µØ«nª÷³Ð   
28800007 µØ«nª÷ºÞ   
28800008 µØ«nª÷¸ê   
28800009 µØ»È«O¥N   
28800010 µØ«n§ëÅU   
28800012 µØ¥Ã­»´ä   
28800013 µØ¥Ã¸êºÞ

TOP

¥»©«³Ì«á¥Ñ HSIEN6001 ©ó 2014-11-21 00:18 ½s¿è

¦^´_ 1# wahaha6666
¤]¬O°Ñ¦ÒGBKEE¤j¤jªºCode
¸Õ¸Õ,¦³²Å¦X»Ý¨D?!
  1. Dim ºô­¶ As Object

  2. Sub ¥b¦Û°Ê()
  3.     Dim i As Integer, K As Integer, ii, J
  4.     Dim path As String
  5.     path = "C:\Stock\"

  6.     'µ{¦¡²Ä¤@¦¸°õ¦æ: ¥´¶}ºô­¶,¦bºô­¶¤¤¤â°Ê¿ï¾Ü¸ê®Æ«á  , «ö[Á`¦æ]or[¿ï©w¤À¦æ] ; ¦³¸ê®Æªº,°õ¦æ²Ä2¦¸¤U¸ü«á·|¦Û°ÊÃö³¬ºô­¶
  7.     'µ{¦¡²Ä¤G¦¸°õ¦æ: Ū¨úºô­¶¸ê®Æ¨ì Excel¤¤.   (¦³¥X²{table¸ê®Æªíªº,¦A«ö¤@¦¸°õ¦æµ{¦¡«h·|¤U¸üÀɮצܥؼÐ)
  8.    
  9. ¦~«× = "103"
  10. ©u´Á = "3"
  11. ¥N¸¹ = "2880"
  12.    
  13.    
  14. On Error GoTo REºô­¶

  15. 1:
  16.     If ºô­¶ Is Nothing Then
  17.         Set ºô­¶ = CreateObject("InternetExplorer.Application")
  18.             With ºô­¶
  19.                 .Visible = True
  20.                 .navigate "http://mops.twse.com.tw/mops/web/t164sb04?encodeURIComponent=1&step=1&firstin=ture&off=1&keyword4=&code1=&TYPEK2=&checkbtn=&queryName=co_id&TYPEK=all&isnew=false&co_id=" & ¥N¸¹ & "&year=" & ¦~«× & "&season=" & ©u´Á
  21.                 .Height = 500
  22.                 .Width = 1050
  23.             End With

  24.         Exit Sub
  25.     End If
  26.     If ºô­¶.Visible = False Then
  27.        ºô­¶.Value = True
  28.         Exit Sub
  29.     End If

  30.     '**********Ū¨úºô­¶ ¸ê®Æ *******************
  31.     Set A = ºô­¶.document.getElementsByTagName("table")
  32.          With Workbooks.Add
  33.             On Error Resume Next
  34.                '************************
  35.                ' For ii = 0 To A.Length - 1        '¤£ª¾¹Dtable½d³ò¦b¦ó³B: ±q0¶}©l
  36.                '************************
  37.                 For ii = 11 To A.Length - 1
  38.                     For i = 0 To A(ii).Rows.Length - 1

  39.                         K = K + 1
  40.                         For J = 0 To 8
  41.                             Cells(K, J + 1) = A(ii).Rows(i).Cells(J).innerText
  42.                         Next
  43.                     Next
  44.                 Next
  45.             '
  46.             If Dir(path & ¥N¸¹ & ".xls") <> "" Then Kill (path & ¥N¸¹ & ".xls")
  47.             ActiveWorkbook.SaveAs Filename:=path & ¥N¸¹ & ".xls"
  48.             ActiveWindow.Close
  49.         End With
  50.     Set A = Nothing
  51.     ºô­¶.Quit    '¥´¶}ªººô­¶,¦A¦¸°õ¦æ«á·|¦Û°Ê¤U¸ü¦³tableªº¸ê®Æ,§¹¦¨¤U¸ü«á,¦Û°ÊÃö³¬¤w¤U¸ü§¹¦¨ªºIEºô­¶
  52.     Exit Sub
  53. REºô­¶:
  54.     Set ºô­¶ = Nothing
  55.    Resume 1
  56. End Sub
½Æ»s¥N½X

TOP

¥»©«³Ì«á¥Ñ HSIEN6001 ©ó 2014-11-20 23:52 ½s¿è

¦^´_ 1# wahaha6666

¦ó¤£ª½±µ§ì¦X¨Ö³øªí,¤£¥Î¤@Àɤ@Àɧì
    http://mops.twse.com.tw/mops/web/t163sb04 (¤w¥]§t»È¦æªÑ)

PS: ­è­è¬Ý¤º®e¤ñ¸û¸Ô²Ó ,  ((½Ð©¿²¤§Úªº«Øij :))

TOP

        ÀR«ä¦Û¦b : ¤â¤ß¦V¤U¬O§U¤H¡A¤â¤ß¦V¤W¬O¨D¤H¡F§U¤H§Ö¼Ö¡A¨D¤Hµh­W¡C
ªð¦^¦Cªí ¤W¤@¥DÃD