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

[µo°Ý] ¥Ñºô­¶¨ú±oªº¸ê®Æ¡A¤£ª¾¹D­n¦p¦ó¦P¨B½s½X¦¨¥¿½T¤§¤¤¤å½X¦^¶Ç

[µo°Ý] ¥Ñºô­¶¨ú±oªº¸ê®Æ¡A¤£ª¾¹D­n¦p¦ó¦P¨B½s½X¦¨¥¿½T¤§¤¤¤å½X¦^¶Ç

[ª©¥DºÞ²z¯d¨¥]
  • GBKEE(2016/6/15 12:57): ¥iGoogle "¶Ã½X" ´M¨D¸Ñ¨M

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-6-15 15:21 ½s¿è

½Ð°Ý¦U¦ì¤j¤j¡A
¥Ñºô­¶¨ú±oªº¸ê®Æ¡A¤£ª¾¹D­n¦p¦ó¦P¨B½s½X¦¨¥¿½T¤§¤¤¤å½X¦^¶Ç¡A
¦pªþ¹Ï  (¤W¹Ï) ¡G

¥¿½TÀ³¬° (¤U¹Ï) ¡G
  1. Sub ¤W¥«·í¨R4()
  2.     Dim xTable As Object, k As Integer, c As Integer, R As Integer        '  , sn As Integer
  3.     Dim url As String, cts As Integer, E As Variant, xDate As String      '  , rc As Integer
  4.     Dim oXmlhttp As Object, oHtmldoc As Object, select2 As String         '  , tm
  5.     Dim TVal() As Variant, sPost As String
  6.    
  7.     If Select_Name = -1 Then Exit Sub
  8.     TVal = Array("MS", "", "0049", "0099P", "019919T", "0999", "0999P", "01", "02", "03", _
  9.                 "04", "05", "06", "07", "21", "22", "08", "09", "10", _
  10.                 "11", "12", "13", "24", "25", "26", "27", "28", "29", _
  11.                 "30", "31", "14", "15", "16", "17", "18", "23", "9299", "19", "20", "CB")
  12.    
  13.     url = "http://www.twse.com.tw/ch/trading/exchange/TWTB4U/TWTB4U.php"
  14.     xDate = Format(Sheets("Á`ªí").[B1], "EE/MM/DD")
  15.     sPost = "input_date=" & Replace(xDate, "/", "%2F") & "&select2=" & TVal(Select_Name)  'urlencode
  16.    
  17.     Set oXmlhttp = CreateObject("msxml2.xmlhttp")
  18.     Set oHtmldoc = CreateObject("htmlfile")
  19.    
  20.     With Sheets("¤W¥«")
  21.         .Select
  22.         .Cells.Clear
  23.         
  24.         With oXmlhttp
  25.             .Open "Post", url, False
  26.             '  .setRequestHeader "Connection", "Keep-Alive"   '  µu®É¶¡¤º¦h¦¸¬d¸ß«ØÄ³¥i¥[³o¦æ
  27.             .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
  28.             .setRequestHeader "Content-Length", Len(sPost)
  29.             .Send sPost
  30.             '  ¤W­± Open °Ñ¼Æ¥Î False (=¦P¨B)¡A¥i¥H¤£¥Î¦A§PÂ_ status
  31.             '  Do While .Status <> 200 Or .readyState <> 4: DoEvents: Loop
  32.             oHtmldoc.write .responseText
  33.             '  MsgBox .responseText
  34.         End With
  35.         
  36.         Set xTable = oHtmldoc.all.tags("TABLE")
  37.         '  Stop
  38.         For Each E In Array(8, 10)       '  8, 10  ->  "TABLE"
  39.             Set xTable = oHtmldoc.all.tags("TABLE")(E)
  40.             '  Set xTable = oHtmldoc.all.tags("TABLE")(0)
  41.             k = k + 1
  42.             
  43.             For R = 0 To xTable.Rows.Length - 1
  44.                 For c = 0 To xTable.Rows(R).Cells.Length - 1
  45.                     Sheets("¤W¥«").Cells(k, c + 1) = xTable.Rows(R).Cells(c).INNERTEXT
  46.                 Next
  47.                 k = k + 1
  48.             Next
  49.             If Right(sPost, 3) <> "t2=" Then Exit For
  50.         Next
  51.     End With
  52. End Sub
½Æ»s¥N½X
  1. Private Function Select_Name() As Integer
  2.     With Sheets("Á`ªí").ComboBox1
  3.         If .ListIndex = -1 Then MsgBox ("±z©|¥¼¿ï¾Ü¡u²£·~Ãþ§O¡v¡A½Ð©ó" & vbCrLf & "½T»{«á¦A¦¸ÂI¿ï¡y¶}±Òºô­¶¡z¡A" & vbCrLf & "ÁÂÁ±z¡I")
  4.         Select_Name = .ListIndex    '  Select_Name = -1,0,1,2,3,4,5,6,7,8,9,.....39
  5.     End With
  6. End Function
½Æ»s¥N½X
ÁÂÁ¦U¦ì¤j¤j¡I

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-6-15 15:22 ½s¿è

¹ï¤£°_¡A¤j·§§Ú¨S´y­z²M·¡¡C¼Ó¤Wªº¹Ï¤ù§¡¬O³z¹L¦P¼Ëªººô§} ¡A
¦Ó¥H¤£¦P³sµ²³B²z¤è¦¡°õ¦æ¥X¨Óªºµ²ªG¡C
  1.     With ActiveSheet.QueryTables.Add(Connection:= _
  2.                   "URL;http://www.twse.com.tw/ch/trading/exchange/TWTB4U/TWTB4U.php", Destination:=Range( _
  3.                   "$A$1"))
½Æ»s¥N½X
³sµ²³B²z¤è¦¡ (¤U¹Ï) «h¬O¥¿±`¡F¦ý¬O¥H
  1.         With oXmlhttp
  2.             .Open "Post", url, False
  3.             '  .setRequestHeader "Connection", "Keep-Alive"   '  µu®É¶¡¤º¦h¦¸¬d¸ß«ØÄ³¥i¥[³o¦æ
  4.             .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
  5.             .setRequestHeader "Content-Length", Len(sPost)
  6.             .Send sPost
  7.             '  ¤W­± Open °Ñ¼Æ¥Î False (=¦P¨B)¡A¥i¥H¤£¥Î¦A§PÂ_ status
  8.             '  Do While .Status <> 200 Or .readyState <> 4: DoEvents: Loop
  9.             oHtmldoc.write .responseText
  10.             '  MsgBox .responseText
  11.         End With
½Æ»s¥N½X
(¤W¹Ï) «o¬O¶Ã½X¡C
ªþ¤WÀɮ׳ö¨Ñ¦U¦ì¤j¤j´ú¸Õ§Yª¾¡AÁÂÁÂÅo¡I
test.rar (40.26 KB)

TOP

¥[¤J¥i¥¿±`·|¤§µ{¦¡¼Ò²Õ¡A¨Ñ§@¤ñ¹ï¡G
test2.rar (24.21 KB)

TOP

¦^´_ 4# stillfish00
¤£¦n·N«ä¡A¸Õ¤F¤@·|ÁÙ¬O¨S¦³´x´¤¨ì
ADODB.Stream ¥Îªk¤ß±o , ¯à§_´N¥H§Úªº
test2.rar ¬°ÃD¸Ñ´b©O¡H
ÁÂÁ§AÅo¡I

TOP

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-6-16 11:44 ½s¿è

¦^´_ 6# joey0415
¦^´_ 4# stillfish00
«D±`·PÁ¨â¦ì¤j¤jªº¤£§[«ü¾É¡A²×§i§¹¦¨¤F¡C
¯u¬OÁ{ªù¤@¬¡A¤£ÂI¤£¿ô¡Cjoey0415 ¤j¤j´£¨Ñªº½d¨Ò
¥H¤Î¼W¥[¤F Function BinToStr(arrBin, strChrs) ªº¨ç¦¡
¥¦§êºt¤F¤@­Ó«D±`­«­nªº¸}¦â¡A¨ü±Ð¤F¡I

TOP

¦^´_ 9# yoyobuy
½Ð¥J²Ó¬Ý¤@¤U #7 ¹Ï¤ù¸Ìªº¤Uµù¡A«K·|©úÁA¤F¡C

TOP

        ÀR«ä¦Û¦b : µÊ®ð¼L¤Ú¤£¦n¡A¤ß¦a¦A¦n¤]¤£¯àºâ¬O¦n¤H¡C
ªð¦^¦Cªí ¤W¤@¥DÃD