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

[µo°Ý] ½Ð°Ý¯à§_±N2­ÓVBA¥¨¶°¦X¨Ö¦¨1­ÓVBA¥¨¶°

[µo°Ý] ½Ð°Ý¯à§_±N2­ÓVBA¥¨¶°¦X¨Ö¦¨1­ÓVBA¥¨¶°

¥»©«³Ì«á¥Ñ lcctno ©ó 2015-7-23 21:06 ½s¿è

§Ú¬Oªì¾ÇªÌ ºô¸ô¤W§ä¤F¼Æ¤Ñ ¦ý¤@ª½§ä¤£¨ì¤èªk ½Ð°ª¤â­Ì©Ô§Ú¤@§â ÁÂÁÂ

VBA¥¨¶°.1
Sub §Y®É²b­È()
Dim E As Object, myItems As Object, myitem
    With CreateObject("InternetExplorer.Application")
        .Visible = True
        .Navigate "http://www.yuantaetfs.com/#/RtNav/Index"
        Do While .Busy Or .readyState <> 4: DoEvents: Loop
        'Application.Wait Now + #12:00:01 AM#   '¦³¿ù¦b¶}±Ò
        Set myItems = .Document.getElementsByTagName("button")
        For Each myitem In myItems
            If myitem.Name = "Agree" Then
                myitem.Click                              '«ö¤U°e¥X¬d¸ß«ö¶s
            End If
        Next
        Application.Wait Now + #12:00:01 AM#
        Set E = .Document.getElementsByTagName("TABLE")(21)
         .Document.body.innerHTML = E.outerHTML
        .ExecWB 17, 2       '  Select All
        .ExecWB 12, 2       '  Copy selection
        With ActiveSheet
            '.Cells.Clear
            .[A1].Select
            .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
        End With
        .Quit        'Ãö³¬ºô­¶
    End With
    Range("L1:Q19").Select
    Selection.ClearContents
        Range("D16:D17").Select
    With Selection.Interior
        .ColorIndex = 35
        .Pattern = xlSolid
    End With
End Sub


VBA¥¨¶° 2
Sub °ê¤º«ü¼Æ()
Dim E As Object, myItems As Object, myitem
    With CreateObject("InternetExplorer.Application")
        .Visible = True
        .Navigate "http://www.yuantaetfs.com/#/Home/Index"
        Do While .Busy Or .readyState <> 4: DoEvents: Loop
        'Application.Wait Now + #12:00:01 AM#   '¦³¿ù¦b¶}±Ò
        Set myItems = .Document.getElementsByTagName("button")
        For Each myitem In myItems
            If myitem.Name = "Agree" Then
                myitem.Click                              '«ö¤U°e¥X¬d¸ß«ö¶s
            End If
        Next
        Application.Wait Now + #12:00:01 AM#
        Set E = .Document.getElementsByTagName("TABLE")(22)
         .Document.body.innerHTML = E.outerHTML
        .ExecWB 17, 2       '  Select All
        .ExecWB 12, 2       '  Copy selection
        With ActiveSheet
            '.Cells.Clear
            .[A27].Select
            .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
        End With
        .Quit        'Ãö³¬ºô­¶
        End With
         Range("A39:E39").Select
    Selection.ClearContents
        Range("C27:C28").Select
    With Selection.Interior
        .ColorIndex = 35
        .Pattern = xlSolid
    End With
End Sub

¦^´_ 56# no3-taco
¨º©Ç¤F ¬O"¦X3"ùتº"«ö¶s5" ¯à¥¿±`°õ¦æ???  
¦]¬°¨ä¾l "§Y®É²b­È"  "¦X1"  "¦X2" ¦b§Ú³o¸Ì¥»¨Ó´N¯à¥¿±`¹B§@ ¥u¦³"¦X3"ùتº"«ö¶s5" °õ¦æ®É·|¥X²{°T®§ "400"
±z½T©w±z¬O°õ¦æ"¦X3"ùتº"«ö¶s5"¶ý?
ÁÂÁ±zªº¥Î¤ß ÁÂÁ¤F

TOP

¦^´_ 53# lcctno

§A¶Kªº§Ú¦³°õ¦æ¡A¨S¦³°ÝÃD¡A¤]¬Ý¤£¥X­þ¸Ì¦³°ÝÃD
§Úı±o¥i¯à¬O¨ä¥L°ÝÃD
«Øij§A­«¶}¤@­ÓexcelÀÉ®×,¦A´ú¸Õ¬Ý¬Ý
¦A¤£¦æ§Ú¤]¨S¿ìªk

TOP

¦^´_ 54# azrael19
¤w±N¨º¦æ¥[¤W " ' " (µù¸Ñ)
·PÁ±z¤F
¤£ª¾±z¦³¨S¦³°Ñ»PªÑ²¼ §Ú¦³°µ¤j½L ¤Î ª÷¿ÄÃþªÑªº«ü¼Æ°µ¤ÀªR "¤j½L+ª÷¿Ä²Ö­pµo¥Í²v" ­Y¦³¿³½ì §Ú³]ªk±N²Î­pµ²ªGµ¹±z §Æ±æ¦³¾÷·|¯à¹ï±z¦³©Ò¦^õX

³¡¤À¤§¤@ªº¤ÀªRºI¹Ï

TOP

¦^´_ 52# lcctno

¨ä¹ê¤£·|³Â·Ð,¤£¹L§Ú·|¥ý«Øij±z±Nµ{¦¡¤¤ActiveSheet.UsedRange.Clear³o¤@¦æµù¸Ñ©Î§R±¼,³o¼Ë§A¦b¨ä¥¦Àx¦s®æ©Ò¥[ªº¥ô¦ó¤½¦¡©Î¤å¦r´N¤£·|³Q²M°£,³o¼Ë¤l·|¤ñ¥Îµ{¦¡¼g§ó¨ã¦³¼u©Ê...
  1. ActiveSheet.UsedRange.Clear
½Æ»s¥N½X
§ï¦¨
  1. 'ActiveSheet.UsedRange.Clear
½Æ»s¥N½X

TOP

¦^´_ 49# no3-taco
¥H¤U¤º®e¥i¯à¦³»~ ¦]¬°ÁÙ¬O¥X²{°T®§ "400"
Sub test()
Dim E As Object, AR(), i As Integer
    AR = Array("http://www.yuantaetfs.com/#/RtNav/Index", "http://www.yuantaetfs.com/#/Home/Index")
    'Ar = Array(ºô§}:§Y®É²b­È,ºô§}:°ê¤º«ü¼Æ) ºô§}¸m¤J°}¦C
    ActiveSheet.UsedRange.Clear
    For i = 0 To 1
        With CreateObject("InternetExplorer.Application")
            .Visible = True
            .Navigate AR(i)
            Do While .Busy Or .readyState <> 4: DoEvents: Loop
            If i = 0 Then  '°ê¤º«ü¼Æ:¤£»Ý«ö¤U¦P·NÁä
                Do
                    Set E = .Document.getElementByid("Agree")
                Loop Until Not E Is Nothing
                E.Click
            End If
            .Visible = False
            Application.VBE.MainWindow.Visible = True
            Application.VBE.Windows("§Y®É¹Bºâ").Visible = True
            Stop  '¤§«á«ö¤UF5
            Do
                Do
                    Set E = .Document.getElementsByTagName("TABLE")(21 + i)
                    '§Y®É²b­È ²Ä21­Ó "TABLE" ,'°ê¤º«ü¼Æ ²Ä22­Ó "TABLE"
                    Debug.Print i, "e Is Nothing ->", E Is Nothing
                Loop Until Not E Is Nothing
                    Debug.Print i, "e Is Nothing ->", E Is Nothing, "e.all.Length", E.all.Length
            Loop Until E.all.Length >= IIf(i = 0, 415, 135) '
            Stop  '¤§«á«ö¤UF5
            
            Application.VBE.Windows("§Y®É¹Bºâ").Visible = False
            Application.VBE.MainWindow.Visible = False
            .Document.body.innerHTML = E.outerHTML
            .ExecWB 17, 2       '  Select All
            .ExecWB 12, 2       '  Copy selection
            With ActiveSheet
                .Range("A" & IIf(i = 0, 1, 27)).Select
                .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
                With .Range(IIf(i = 0, "D16:D17", "C27:C28")).Interior
                    .ColorIndex = 35
                    .Pattern = xlSolid
                End With
            End With
            .Quit        'Ãö³¬ºô­¶
        End With
    Next
End Sub

TOP

¦^´_ 50# azrael19
¥i§_À°§Ú©ó"¦¨¥\¤F"¨º¹Ï¥[¤W"¬Q¦¬«ü¼Æ" ¤§¼Æ¾Úµ²ªG  ÁÂÁ ­Y«Ü³Â·Ð §Ú¥i¥H¥Î¨ä¥L¤è¦¡±o¨ì¨ºµ²ªGªº "=C27+D27"

TOP

¦^´_ 50# azrael19

¯uªº·PÁ±z ¤w¸g¦¨¥\¤F

TOP

¦^´_ 46# lcctno

¬O³o¼Ë¶Ü
  1. Option Explicit
  2. Sub Ex()
  3.     Dim E As Object, AR(), i As Integer, o As Object, k As Integer
  4.     AR = Array("http://www.yuantaetfs.com/#/RtNav/Index", "http://www.yuantaetfs.com/#/Home/Index")
  5.     'Ar = Array(ºô§}:§Y®É²b­È,ºô§}:°ê¤º«ü¼Æ) ºô§}¸m¤J°}¦C
  6.     ActiveSheet.UsedRange.Clear
  7.     For i = 0 To 1
  8.         With CreateObject("InternetExplorer.Application")
  9.             .Visible = True
  10.             .Navigate AR(i)
  11.             Do While .Busy Or .readyState <> 4: DoEvents: Loop
  12.             If i = 0 Then  '°ê¤º«ü¼Æ:¤£»Ý«ö¤U¦P·NÁä
  13.                 Do
  14.                     Set E = .Document.getElementByid("Agree")
  15.                 Loop Until Not E Is Nothing
  16.                 E.Click
  17.             End If
  18.             Do
  19.                 Do
  20.                     Set E = .Document.getElementsByTagName("TABLE")(21 + i)
  21.                     '§Y®É²b­È ²Ä21­Ó "TABLE" ,'°ê¤º«ü¼Æ ²Ä22­Ó "TABLE"
  22.                 Loop Until Not E Is Nothing
  23.             'Loop Until E.all.Length >= IIf(i = 0, 431, 150) '
  24.             Loop Until InStr(1, E.outerHTML, IIf(i = 0, "00638R", "¹q¤lÃþ¥[ÅvªÑ»ù«ü¼Æ"))  '§ï¥Î¬ÛÃö¦r¦ê½T»{¬O§_¦³¸ê®Æ
  25.             
  26.             '§R°£¡¶ ¡¿ ²Å¸¹¨Ã¥[¤W¼Æ¦r­t¸¹Åã¥Ü
  27.             If 0 = i Then
  28.                 For Each o In E.getElementsByClassName("ng-binding upcolor")
  29.                     If InStr(1, o.innerText, "¡¶ ¡¿") Then
  30.                         o.innerHTML = Mid(o.innerText, 5)
  31.                     End If
  32.                 Next
  33.                 For Each o In E.getElementsByClassName("ng-binding downcolor")
  34.                     If InStr(1, o.innerText, "¡¶ ¡¿") Then
  35.                         o.innerHTML = "-" & Mid(o.innerText, 5)
  36.                     Else
  37.                         o.innerHTML = "-" & o.innerText
  38.                     End If
  39.                 Next
  40.             Else
  41.                 '±N«ü¼Æº¦¶^¤Îº¦¶^´T%¦r¦ê¤À¶}¨Ã¥[¤W­t¸¹Åã¥Ü
  42.                 For Each o In E.getElementsByClassName("ChangesText2 upcolor")
  43.                     k = InStr(1, o.innerText, "(")
  44.                     If 0 < k Then
  45.                         o.outerHTML = "<td>" & Mid(o.innerText, 1, k - 1) & "</td><td>" & Replace(Mid(o.innerText, k + 1), ")", "</td>")
  46.                     End If
  47.                 Next
  48.                 For Each o In E.getElementsByClassName("ChangesText2 downcolor")
  49.                     k = InStr(1, o.innerText, "(")
  50.                     If 0 < k Then
  51.                         o.outerHTML = "<td>-" & Mid(o.innerText, 1, k - 1) & "</td><td>-" & Replace(Mid(o.innerText, k + 1), ")", "</td>")
  52.                     End If
  53.                 Next
  54.             End If
  55.             .Document.body.innerHTML = Replace(E.outerHTML, "<span class=""ng-hide"" ng-show=""o.price == 0"">0</span>", "") ' ¥h°£ [§é·¸»ù] ¼Æ¦r«á­±¦h¾lªº0
  56.             '.Document.body.innerHTML = E.outerHTML
  57.             'Stop
  58.             .ExecWB 17, 2       '  Select All
  59.             .ExecWB 12, 2       '  Copy selection
  60.             With ActiveSheet
  61.                 .Range("A" & IIf(i = 0, 1, 27)).Select
  62.                 .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False, NoHTMLFormatting:=True
  63.                 With .Range(IIf(i = 0, "D16:D17", "C27:C28")).Interior
  64.                     .ColorIndex = 35
  65.                     .Pattern = xlSolid
  66.                 End With
  67.             End With
  68.             .Quit        'Ãö³¬ºô­¶
  69.         End With
  70.     Next
  71. End Sub
½Æ»s¥N½X

TOP

¥»©«³Ì«á¥Ñ no3-taco ©ó 2015-7-27 13:32 ½s¿è

¦^´_ 47# lcctno


1.§A«ö¶s­n®×¥kÁä¡A­«·s«ü©w¥¨¶°¡A
2.¤£µM´N¬OÂI£¸¤U¨º­Óµ{¦¡½X¸Ì­±¥ô·N¦ì¸m¦A®×f5

TOP

        ÀR«ä¦Û¦b : §Ñ¥\¤£§Ñ¹L¡A§Ñ«è¤£§Ñ®¦¡C
ªð¦^¦Cªí ¤W¤@¥DÃD