- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
本帖最後由 stillfish00 於 2014-6-17 14:09 編輯
回復 9# GBKEE
QueryTables.Delete 只會刪除連線和定義的名稱,不會刪除取得的資料
而樓主用迴圈執行多筆時資料會一直往右累積增加
這也許可以改RefreshStyle為xlOverwriteCells來防止(預設是xlInsertDeleteCells)
像這樣- Sub Ex()
- Dim i As Integer, Rng As Range
- With ActiveSheet
- For i = 3 To 7 Step 2
- With .QueryTables.Add("URL;http://forum.twbts.com/thread-635-1-1.html", .Cells(1, 1))
- .WebSelectionType = xlSpecifiedTables
- .WebFormatting = xlWebFormattingNone
- .WebTables = i & ""
- .WebPreFormattedTextToColumns = True
- .WebConsecutiveDelimitersAsOne = True
- .WebSingleBlockTextImport = False
- .WebDisableDateRecognition = False
- .WebDisableRedirections = False
-
- .RefreshStyle = xlOverwriteCells
- .Refresh BackgroundQuery:=False
- Wb_Save .ResultRange, i
-
- .Delete
- End With
- Next
- End With
- End Sub
複製代碼 |
|