0
我有一個基於動態鏈接的web抓取的連接。所以,我無法設置固定連接。下面的宏創建連接,然後更新工作表。在網頁抓取後使用VBA在Excel中刪除連接
With ThisWorkbook.Worksheets("Data").QueryTables.Add(Connection:= _
"<URL redacted>", Destination:=ThisWorkbook.Worksheets("Data").Range("$A$1"))
.Name = "DataPull"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
.Delete
End With
該宏每隔1分鐘運行一次以更新數據。所以,這會在每次運行時創建一個新的連接。我不想要這麼多的連接存在,因爲它們不會再被使用。 一旦網絡抓取完成,我該如何刪除連接? 還是有辦法建立一個單一的連接,可以修改自己基於一個變量。變量是根據當前時間而變化的時間間隔。
我看着這個選項
For Each qr In ThisWorkbook.Queries
qr.Delete
Next qr
但也有其他兩個固定連接,我不想刪除。 創建的新連接具有名稱Connection,Connection1等。有沒有辦法根據名字刪除連接?
你看[QueryTables.Add方法(Excel)](https://msdn.microsoft.com/en-us/vba/excel-vba/articles/querytables-add-method-excel) – noas