ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 运用QUERYTABLE采集网页数据

运用QUERYTABLE采集网页数据

作者:绿色风 分类: 时间:2022-08-18 浏览:72
楼主
xmyjk
Q:表左半边为船舶的航次,需要经过网页查询,从网页中提取数据返回至EXCEL表中。

 
A:页面格式工整,仅仅使用QUERYTABLE,就可以采集数据了。
  1.     Sub 宏1()
  2.     Dim n As Long

  3.     [c1].CurrentRegion.Offset(1).Clear
  4.          
  5.     For i = 2 To [a65536].End(3).Row
  6.          
  7.        n = [c65536].End(3).Row + 1
  8.          
  9.        With ActiveSheet.QueryTables.Add(Connection:= _
  10.             "URL;http://edi.easipass.com/dataportal/query.do?vessel1=&vess_call1=&voyage1=" & Cells(i, 1) & "&carr_code1=&ship_agen1=&berth1=&esti_sail1=&esti_sail2=&qid=402803af0ecb1a4c010ecb1bc2bb00a0" _
  11.             , Destination:=Cells(n, 3))
  12.             .PreserveFormatting = True
  13.             .BackgroundQuery = True
  14.             .RefreshStyle = xlOverwriteCells
  15.             .AdjustColumnWidth = True
  16.             .WebSelectionType = xlSpecifiedTables
  17.             .WebFormatting = xlWebFormattingNone
  18.             .WebTables = "5"
  19.             .WebPreFormattedTextToColumns = True
  20.             .Refresh BackgroundQuery:=False
  21.        End With
  22.          
  23.        Cells(n, 3).QueryTable.Delete
  24.        Range(Cells(n, 3), Cells(n, 11)).Delete Shift:=xlUp
  25.                   
  26.     Next
  27.          
  28.     MsgBox "ok!"

  29.     End Sub

船舶信息查询后获取.rar
2楼
yjzstar
留下脚印,以备后用!

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap