ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: a20089668

[已解决] 关于获取网页数据的问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-8-19 13:31 | 显示全部楼层
  1. Sub 按钮1_Click()
  2.     Dim url, html, n, p
  3.     n = 2
  4.     Cells.NumberFormatLocal = "@"
  5.     For p = 5 To 6
  6.         url = "http://www.okooo.com/zucai/shuju/zhishu/141" & Format(p, "00")
  7.         Set html = CreateObject("htmlfile")
  8.         With CreateObject("msxml2.xmlhttp")
  9.             .Open "get", url, False
  10.             .send
  11.             html.body.innerhtml = StrConv(.responsebody, vbUnicode)
  12.             Set tb = html.all.tags("table")(0).Rows
  13.             For i = 1 To tb.Length - 1
  14.                 If Trim(CStr(tb(i).Cells(4).innertext)) = "2-0" Then
  15.                     n = n + 1
  16.                     For j = 1 To tb(i).Cells.Length - 1
  17.                         Cells(n, j + 1) = tb(i).Cells(j).innertext
  18.                     Next
  19.                     Cells(n, 1) = n - 2
  20.                 End If
  21.             Next
  22.         End With
  23.     Next
  24. End Sub
  25. Sub 按钮2_Click()
  26.     Range("a3:p65536").ClearContents
  27. End Sub
复制代码

okooo.rar

10.93 KB, 下载次数: 7

TA的精华主题

TA的得分主题

发表于 2014-8-19 14:38 | 显示全部楼层
a20089668 发表于 2014-8-19 09:47
谢谢帮助。
您这个是录制宏的吧,还行,能得到正确的结果,但就是速度挺慢的,应该能优化吧,等回来是再 ...

2003版本大家都可以用,那是直接从表中网站导入网页数据,不用代码也行

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-8-19 15:01 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
suwenkai 发表于 2014-8-19 13:31

先谢谢,又辛苦您为我调试代码。
可能我表达错误吧,
前面所说“凡是比分为2-0的,写入Excel表都是显示2000-2-1‘
意思是网页上的比分为“2-0”,导入Excel都是显示2000-2-1,无论哪一期的数据。很显然我从“2000-2-1”这个字符串很难截取到“2-0”。


不过,我把Cells.NumberFormatLocal = "@"加入到第一次您发上来的附件相应位置,已经得到我想要正确的结果了,谢谢。

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-8-19 15:13 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
wj2368 发表于 2014-8-19 14:38
2003版本大家都可以用,那是直接从表中网站导入网页数据,不用代码也行

呵呵,说得对!毕竟2003版本用了那么多年,什么都熟悉得不得了。
直接从表中网站导入网页数据,我尝试过。
我搞这个自动获取网页数据,是长期都要做的事情,并且不仅仅在这个页面导入数据,好几个页面都要导入。
很显然需要自动化比较高的代码。
无论如何,都很感谢您的帮助。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-27 10:18 , Processed in 0.059414 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表