我正在尝试实现一个代码,我可以从网站导入多个表。我可以使用以下代码执行此操作。但是,代码太慢了。
Sub FetchData()
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;%url%", Destination:=Range( _
"$A$1"))
.Name = "xyz"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
End Sub
有人可以建议一个能快速输出的代码吗?
答案 0 :(得分:0)
我想到了一些想法,如果您将屏幕更新设置为false,如果在代码运行时屏幕上发生了很多事情,这可以真正加快代码速度。
Application.ScreenUpdating = False
第二个想法是你的代码中有很多'.l运算符,你检查过你需要设置它们还是删除其中的一些。我听说过删除不必要的'。'运营商可以大大加快代码。