Board logo

標題: [發問] 程式語法有誤 [打印本頁]

作者: pupai    時間: 2014-12-15 16:52     標題: 程式語法有誤

您好
我插入指定日期後,程式錯誤
請幫忙修改
謝謝!!
  1. Sub 巨集()
  2.     Dim Theurl As String, Sdate, AR, A As Date
  3.    
  4.     A = Range("A1").Value
  5.     Sdate = Text(A1, "emmdd")
  6.      
  7.     Theurl = "http://www.twse.com.tw/ch/trading/fund/BFI82U/BFI82U_print.php?begin_date="&Sdate&end_date=&report_type=day&language=ch&save=csv"
  8.     With Workbooks.Open(Theurl)
  9.         AR = .Sheets(1).UsedRange
  10.         .Close False
  11.     End With
  12.     With ActiveSheet
  13.         
  14.    
  15.         
  16.         .Range("B2").Resize(UBound(AR, 1), UBound(AR, 2)) = AR
  17.    
  18.             
  19.      

  20.     End With
  21. End Sub
複製代碼

作者: hugh0620    時間: 2014-12-15 18:44

回復 1# pupai


    日期格式 :yyyymmdd
     Sdate = Text(A1, "emmdd")  是不識這句有誤呢??
作者: pupai    時間: 2014-12-15 18:56

回復 2# hugh0620


    我猜
    Theurl = "http://www.twse.com.tw/ch/trading/fund/BFI82U/BFI82U_print.php?begin_date="&Sdate&end_date=&report_type=day&language=ch&save=csv"

謝謝
作者: HSIEN6001    時間: 2014-12-16 12:56

本帖最後由 HSIEN6001 於 2014-12-16 12:58 編輯

回復 3# pupai


    用CSV下載,同 http://forum.twbts.com/thread-13018-1-1.html   #6  
(一起下載)
  1. Sub CSV下載()
  2. Dim path As String
  3. path = "C:\"
  4. 日期 = "20141215"

  5. Set XML = CreateObject("Microsoft.XMLHTTP")
  6. Set stream = CreateObject("ADODB.stream")
  7.    
  8.     URL = "http://www.taifex.com.tw/chinese/3/7_12_8dl.asp?syear=" & VBA.Left(日期, 4) & "&smonth=" & VBA.Mid(日期, 5, 2) & "&sday=" & _
  9.             VBA.Right(日期, 2) & "&eyear=" & VBA.Left(日期, 4) & "&emonth=" & VBA.Mid(日期, 5, 2) & "&eday=" & VBA.Right(日期, 2)
  10.         XML.Open "GET", URL, 0
  11.         XML.send
  12.     With stream
  13.         .Type = 1
  14.         .Open
  15.         .write XML.responseBody
  16.         If Dir(path & "類股期貨" & 日期 & ".csv") <> "" Then Kill (path & "類股期貨" & 日期 & ".csv")
  17.         .SaveToFile (path & "類股期貨" & 日期 & ".csv")
  18.         .Close
  19.     End With
  20.    
  21.     URL = "http://www.twse.com.tw/ch/trading/fund/BFI82U/BFI82U_print.php?begin_date=" & _
  22.             VBA.Left(日期, 8) & "&end_date=" & VBA.Left(日期, 8) & "&report_type=day&language=ch&save=csv"
  23.         XML.Open "GET", URL, 0
  24.         XML.send
  25.     With stream
  26.         .Type = 1
  27.         .Open
  28.         .write XML.responseBody
  29.         If Dir(path & "三大法人買賣超" & 日期 & ".csv") <> "" Then Kill (path & "三大法人買賣超" & 日期 & ".csv")
  30.         .SaveToFile (path & "三大法人買賣超" & 日期 & ".csv")
  31.         .Close
  32.     End With

  33. End Sub
複製代碼

作者: pupai    時間: 2014-12-16 14:13

回復 4# HSIEN6001


    感謝回復
後來我用土方法
  1. Sub 巨集()
  2.    
  3.    
  4.     Dim Theurl As String, Sdate, AR, A As Date
  5.    
  6.     A = Range("A1").Value
  7.     Sdate = Format(A, "yyyymmdd")

  8.    
  9.     Theurl = "http://www.twse.com.tw/ch/trading/fund/BFI82U/BFI82U_print.php?begin_date=" & Sdate & "&end_date=" & Date & "&report_type=day&language=ch&save=csv"
  10.    
  11.    
  12.             
  13.    
  14.    
  15.     With Workbooks.Open(Theurl)
  16.         AR = .Sheets(1).UsedRange
  17.         .Close False
  18.     End With
  19.     With ActiveSheet
  20.          
  21.         .Range("B2").Resize(UBound(AR, 1), UBound(AR, 2)) = AR
  22.    
  23.     End With
  24. End Sub
複製代碼

作者: HSIEN6001    時間: 2014-12-16 20:19

回復 5# pupai

可能是這個問題  path = "C:\"     
這是指定存  C:\
如果你沒有直接權限 , 自己建立一個資料夾
改成為你使用者可存檔的位置
作者: GBKEE    時間: 2014-12-17 07:45

回復 3# pupai
  1. Sub 巨集()
  2.     Dim Theurl As String, Sdate, AR, A As Date
  3.     A = Range("A1").Value
  4.     Sdate = Format(A, "yyyymmdd")   
  5.     Theurl = "http://www.twse.com.tw/ch/trading/fund/BFI82U/BFI82U_print.php?begin_date=" & Sdate & "&end_date=&report_type=day&language=ch&save=csv"
  6.     With Workbooks.Open(Theurl)
  7.         AR = .Sheets(1).UsedRange
  8.         .Close False
  9.     End With
  10.     With ActiveSheet
  11.         .Range("B2").Resize(UBound(AR, 1), UBound(AR, 2)) = AR
  12.     End With
  13. End Sub
複製代碼

作者: pupai    時間: 2014-12-17 10:52

回復 7# GBKEE


    謝謝 回復




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)