ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何用vba获取本地网页的数据?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-2-8 13:52 | 显示全部楼层 |阅读模式
本帖最后由 系统正在加载… 于 2014-2-8 13:55 编辑

公历农历
1999己卯
9癸丑
9甲子
9戊辰
9
9
要求:
1、自动点击webbrowser中的【八字】按钮
2、自动把B2:B7的数据输入到输入框
3、点击webbrowser中的【确定】按钮
4、把显示框里面的己卯、癸丑、甲子、戊辰分别输入到C2:C5
谢谢您!!!
附件中已经附了该网页文件



若是代码较为复杂,希望您略加备注。谢谢您!!![attach]1538126[/attach]

附件.7z

179.76 KB, 下载次数: 38

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-8 16:46 | 显示全部楼层
up↑

要下班了啊!

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-8 19:30 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-8 20:23 | 显示全部楼层
运行之后,弹出对话框【对象不支持该动作】!!!怎么解决呢???
  1. Private Sub Worksheet_Activate()

  2. WebBrowser1.Navigate ("C:\Users\wc\Desktop\附件\sxwnl.htm")
  3. WebBrowser1.Height = 400
  4. WebBrowser1.Width = 750
  5. [f1] = Mid(WebBrowser1.LocationURL, 9)
  6. Set objDm = WebBrowser1.Document
  7. 'Set objElement = objDm.getElementById("Cml_y") '通过ID获得元素
  8. 'tmpStr = objElement.ChildNodes(0).ChildNodes(6).innerText 'ChildNodes(x):返回第x个子节点(x从0开始)
  9. objDm.getElementById("Cml_y") = [b2]
  10. objDm.getElementById("Cml_m") = [b3]
  11. objDm.getElementById("Cml_d") = [b4]
  12. objDm.getElementById("Cml_his") = [b5] & ":" & [b6] & ":" & [b7]
  13. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-10 08:53 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2014-2-10 09:30 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-10 09:43 | 显示全部楼层
ccwan 发表于 2014-2-10 09:30
试试objDm.getElementById("Cml_y").value =

谢谢您

先弹出一个窗口,说属性不支持

点确定之后,网页中的获取值没有变化。

TA的精华主题

TA的得分主题

发表于 2014-2-10 09:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
试试下面的代码
  1. Sub cc()
  2.     With CreateObject("InternetExplorer.Application")
  3.         .Visible = True
  4.         .Navigate "C:\Users\wc\Desktop\附件\sxwnl.htm"
  5.         Do Until .ReadyState = 4
  6.             DoEvents
  7.         Loop
  8.         .Document.all.tags("A")(4).Click
  9.         .Document.getElementById("Cml_y").Value = [b2]
  10.         .Document.getElementById("Cml_m").Value = [b3]
  11.         .Document.getElementById("Cml_d").Value = [b4]
  12.         .Document.getElementById("Cml_his").Value = [b5] & ":" & [b6] & ":" & [b7]
  13.         .Document.all.tags("INPUT")(133).Click
  14.     End With
  15. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-10 10:21 | 显示全部楼层
ccwan 发表于 2014-2-10 09:56
试试下面的代码

他仅仅在我的浏览器中打开一个新的窗口,地址是 about:blank

加载半天都打不开。

麻烦你下载第一楼的附件,研究一下。

谢谢您

TA的精华主题

TA的得分主题

发表于 2014-2-10 10:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
{:soso_e127:}我就是用的你的附件啊,你确定你的桌面上有这个附件吗?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-15 00:12 , Processed in 0.034561 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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