我有2个网址,我想将目标网页上的整个数据从工作表中的excel中的一列中删除。网址是; URL; http://www.chambersandpartners.com/Global/firm/257/hogan-lovells URL; http://www.chambersandpartners.com/Global/firm/3635/king-spalding
当我在excel中通过"数据/来自网络"我可以收集数据,但是当我尝试使用VBA时,不会返回任何数据。我想要一本工作簿中每个URL的单独工作表。然后我想在列表中添加更多URL,以便程序可以遍历它们。请任何人帮忙吗?提前谢谢。
VBA代码如下:
Sub adds()
For x = 1 To 5
Worksheets("chambers").Select
Worksheets("chambers").Activate
mystr = "URL;http://www.chambersandpartners.com/Global/firm/257/hogan- lovells"
mystr = Cells(x, 1)
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = x
With ActiveSheet.QueryTables.Add(Connection:=mystr, Destination:=Range("$A$1"))
'CommandType = 0
.Name = "hogan-lovells"
.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
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
Next x
End Sub
这是Cells(x, 1)
中的五个网址,我试图抓住这段代码:
URL;chambersandpartners.com/Global/firm/257/hogan-lovells
URL;chambersandpartners.com/Global/firm/3635/king-spalding
URL;chambersandpartners.com/Global/firm/3636/kirkland-ellis
URL;chambersandpartners.com/Global/firm/3689/latham-watkins
URL;chambersandpartners.com/Global/firm/255/linklaters
答案 0 :(得分:0)
如果使用默认的Excel Webquery手动添加数据,则可以使用VBA简单地刷新查询。
如果您不需要动态URL处理或解析,这是执行自动查询的最简单方法。
只需创建所有连接,然后使用宏录制记录您的刷新,然后调整生成的VBA。
您可以在“数据”标签下找到所有有效连接 - >连接