Board logo

標題: 如何將網站內的日期做成在excel用自動輸入 [打印本頁]

作者: drewchen1    時間: 2011-8-20 09:53     標題: 如何將網站內的日期做成在excel用自動輸入

各位先進,
小弟在學vba 來控制web 查循 但出現欄位如何替代問題,請會的人幫忙
問題如下:想將這網址"URL;http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report201108/A11220110818ALLBUT0999_1.php?" _
        , Destination:=Range("A1"))
的repot後的 201108與  A11220110818ALLBUT0999_1.php?" 的20110818 做成可在excel 表格內直接輸入 不需要去網站欄改不知有何方法
作者: oobird    時間: 2011-8-20 18:57

Sub Test()
URL = "http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report" & [a1] & "/A112" & [a2] & "ALLBUT0999_1.php?"
Shell "explorer " & URL, 0
End Sub

a1儲存格放201108
a2儲存格放20110118
作者: drewchen1    時間: 2011-8-20 22:32

回復 2# oobird


    謝謝大大
^^
作者: drewchen1    時間: 2011-8-20 22:50

回復 2# oobird
大大版主,
小弟照方法改了後還是無法值行,我將整個程式貼出來看是要怎改才對
With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report201108/A11220110818ALLBUT0999_1.php?" _
        , Destination:=Range("A1"))
        .Name = "19"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "10"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
麻煩你了^^
作者: oobird    時間: 2011-8-20 23:11

x = [a1]
y = [a2]
With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.twse.com.tw/ch/tradin ... NDEX/genpage/Report" & x & "/A112" & y & "ALLBUT0999_1.php?" _
        , Destination:=Range("b1"))
        .Name = "19"
        .FieldNames = True
後面都不變。執行情形看圖:
[attach]7520[/attach]
作者: drewchen1    時間: 2011-8-20 23:17

回復 5# oobird


    感謝大大 ,原來是這樣做的
^^
作者: 劉照雄    時間: 2011-9-1 08:42

On Error Resume Next
1: y = CLng(Application.InputBox(prompt:="輸入日期,日期格式(yyyymmdd)", Title:="輸入日期"))
x = Left(y, 6)
If y = False Then Exit Sub
If Len(y) <> 8 Or Err Then GoTo 1
With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.twse.com.tw/ch/tradin ... NDEX/genpage/Report" & x & "/A112" & y & "ALLBUT0999_1.php?" _
        , Destination:=Range("b1"))
        .Name = "19"
        .FieldNames = True




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