它与Windows集成后,可以使用任何支持它的应用程序(例如Word,Outlook或Excel)中的Visual Basic for Applications(VBA)脚本,以多种令人惊讶的方式控制Internet Explorer。

立即解锁免费的“基本Excel公式”备忘单!

这将使您注册我们的新闻通讯

VBA自动化,特别是直接自动化IE之类的浏览器,正如您将在本文中看到的,正是将VBA从便捷的编程脚本提升为强大的自动化语言的一种方式。 之所以如此出色,是因为创建许多带有控件或对象的应用程序的目的仅仅是为了让您使用VBA编程语言将其集成到其中。

这些年来,我们已经向您展示了如何使用VBA做一些非常酷的事情。例如,您可以使用它直接在Excel内部发送电子邮件如何使用VBA脚本从Excel电子表格发送电子邮件如何使用VBA脚本从Excel电子表格发送电子邮件我们的代码模板将帮助您使用协作数据对象从Excel内部设置自动电子邮件(CDO)和VBA脚本。,您可以自动将Outlook任务导出到Excel电子表格如何使用VBA将Outlook任务导出到Excel如何使用VBA将Outlook任务导出到Excel无论您是否是Microsoft的粉丝,这都是一件好事关于MS Office产品,至少可以说,将它们彼此集成是多么容易。...,您甚至可以设计自己的Internet浏览器如何使用VBA制作自己的基本Internet浏览器使用VBA制作自己的基本Internet浏览器当您真正停止思考时,最简单形式的Internet浏览器并不是给人印象深刻的应用程序。我的意思是,是的,按任何人的标准,互联网都是令人惊叹的。链接的概念...阅读全文!也不只是微软产品。从Adobe Acrobat SDK到用于AutoCAD的ObjectARX SDK,各种各样的供应商提供了第三方应用程序,它们已经将VBA和兼容的对象集成到了他们的软件中,您可以通过多种方式插入比您想象的更多的应用程序。

在这种情况下,您将要连接Excel与IE。 为什么是IE? 由于Internet Explorer已与操作系统很好地集成在一起,因此您实际上无需做很多事情就可以在Word或Excel等其他Microsoft产品中开始在VBA中使用IE自动化。 这就是in的美。在本文中,您将看到这种自动化是如何工作的,在以后的文章中,您将看到如何使用其他浏览器执行几乎相同的操作。

我在这里向您展示的是一个看似简单的应用程序,但是它具有大量的应用程序,您可以在其中使用此代码在浏览器中进行各种有趣的操作。 最重要的是,您将要创建一个Excel电子表格,以便通过单击一下按钮快速保存所有打开的浏览器窗口。 您可以保存此电子表格,然后走开或关闭计算机。

一小时或三天后回来,打开电子表格,单击另一个按钮,那些保存的URL将在与以前相同的选项卡中重新打开。 显而易见,很酷的用法是在Excel中存储整个常见的在线工作区设置库。 然后,您只需单击一下按钮即可还原该工作空间,而不必再次查找所有这些URL。

首先要做的是打开Excel(在使用VBA编程时,我使用的是2013其他版本类似),然后转到“开发人员”菜单项。 在其中,您会看到一个插入按钮,该按钮会下拉所有控件。 选择ActiveX按钮控件并将其放置在电子表格中。

据推测,如果需要,您已经为URL创建了标头,但不必这样做。 这实际上是一个URL存储库,因此标头并不重要。 添加按钮后,双击它打开VBA编辑器。 在左下方,您将看到新按钮的属性。

将其重命名为cmdSaveURLs,然后将标题设置为Save URLs,以指示这是从IE浏览器保存所有打开的URL的按钮。

接下来,转到VBA编辑器顶部的“工具”菜单,单击菜单中的“引用”,然后向下滚动很长的列表以查找Microsoft Internet Controls引用。 单击其左侧的复选框,然后单击“确定”。

现在您可以开始滚动了。 在编辑器文本区域中,您应该看到一行读取了Private Sub cmdSaveURLs_Click()的行。 如果看不到,请单击文本区域上方的左下拉框,然后在列表中找到cmdSaveURLs。 选择它,它将为您创建Click()函数。

这是您要插入该函数的代码:

im IE作为ObjectDim shellWins作为新ShellWindowsDim IE_TabURL作为StringDim intRowPosition作为IntegerintRowPosition = 2对于shellWinsIE_TabURL = IE.LocationURLIf IE_TabURL <> vbNullString ThenSheet1.Range(“ IE_Tab = 1 IETabs> Microsoft脚本运行时参考使其无所不能,因此您可以访问ShellWindows对象,该对象使您可以遍历Windows并找到已打开的IE实例。 该脚本将找到您打开的每个URL,并将其写入Excel电子表格。

因此,从理论上讲,如果您正在从事博客之类的工作,并且打开了一些项目,例如研究窗口,博客编辑器或日历窗口,那么所有这些选项卡都将处于活动状态。 如果您必须关闭或匆忙离开,则通过复制所有这些URL来保存您的位置可能是非常痛苦的。

使用新的Excel脚本,只需单击“加载URL”按钮,它将直接将其加载到电子表格中。

一个警告。 如果您不使用标题行,则需要将行intRowPosition = 2更改为intRowPosition = 1,这将从第一行开始,而不是跳过标题行。

该项目的下一个阶段是朝另一个方向发展。 单击“加载URL”,并让Excel启动IE,然后重新加载您已保存在电子表格中的所有URL。 这是cmdLoadURLs_Click()函数的外观。

昏暗的IE作为ObjectDim的ShellWins作为新的ShellWindowsDim IE_TabURL的StringDim intRowPosition的IntegerintRowPosition = 2Set IE = CreateObject(“ InternetExplorer.Application”)IE.Visible = TrueIE.Navigate Sheet1.Range(“ A”&intRowPosition.sintBowPosition)While 1虽然Sheet1.Range(“ A”和intRowPosition)<> vbNullStringIE.Navigate Sheet1.Range(“ A”和intRowPosition),CLng(2048)同时IE.BusyDoEventsWendintRowPosition = intRowPosition = intRowPosition + 1Wending这里是步骤,但是IE = No 您会看到代码并不那么长或太复杂。 您创建一个新的IE实例,使其可见(这将打开IE而不加载URL)。 接下来,它将加载列表中的第一个URL。

脚本的While IE.Busy部分将等到页面完全加载后,再转到电子表格中的其余URL,打开一个新标签页(这就是CLng(2048)的作用,直到它被点击 电子表格中的空白单元格,则它将停止打开新标签页。这是我的IE浏览器,使用Excel IE自动化脚本恢复了所有四个原始标签页。

我这样做的真正目的是让各个电子表格设置选项卡集合,以完成诸如在我自己的博客上进行研究和写作,在MakeUseOf上写作,在网站上进行SEO项目工作或需要其他角色或项目的完整列表之类的任务 经常使用的选项卡的已保存集合。

使用电子表格存储这些设置并自动在浏览器中打开它们可以节省大量时间,而且实际上也很酷。

您在VBA应用程序中使用任何类型的IE自动化吗? 从Excel中看到这种IE控件还有其他不错的用法吗? 在下面的评论部分中分享您的想法和反馈!

探索更多有关:计算机自动化,Microsoft Excel,电子表格。

excel宏根据表格自动计算机,使用VBA从Excel电子表格自动执行Internet Explorer会话 | MOS86...相关推荐

  1. excel宏根据表格自动计算机,Excel使用宏录制自动将输入内容排到另一张表的操作方法...

    最近很多朋友咨询关于Excel使用宏录制自动将输入内容排到另一张表的操作方法,今天的这篇教程就来聊一聊这个话题,希望可以帮助到有需要的朋友. Excel使用宏录制自动将输入内容排到另一张表的操作方法 ...

  2. EXCEL宏根据指定行数来切割excel文件内容成新文件

    EXCEL宏根据指定行数来切割excel文件内容成新文件 宏内容 Sub splitexcel() Dim r, c, i, totalhangshu, fileshu, bt As Long App ...

  3. excel宏教程_EXCEL — 实用的VBA

    虽说现在VBA真的是毫无排面,但只要会启用「宏」,收藏几个复制粘贴就能用的代码,作为一名办公室民工,总有用得上的时候. 所以这里记录几个之前工作中高频使用的小小小脚本. 下面提到的工作簿,即单个的 . ...

  4. PDF转Excel(PS:学习使用VBA处理Excel)

    昨天接到一个任务要将pdf中的表格转成excel,打开一看pdf有一百多页,看来手打是不可能了,只能想办法处理. 由于我拿到的PDF是这样的,第一步先把PDF转成word形式,我这里使用的是Adobe ...

  5. excel两个表格数据对比_用Excel一键抓取网页表格数据

    无需插件或编程,Excel自带一键抓取网页表格数据,你会用吗?省去从网页复制甚至手工抄写的麻烦,极大提高工作效率! 首先在浏览器打开想要抓取表格的网页(例如:中国银行外汇牌价),复制地址栏网址,然后打 ...

  6. excel中计算表格中公式_在Excel中计算年度成本和节省

    excel中计算表格中公式 This workbook shows how to calculate annual costs and savings in Excel. It's amazing h ...

  7. wps js宏开发表格数据归类拆分和excel文件合并的xlam加载宏插件

    前言 用wps js宏编辑器开发的表格数据拆分与合并的加载宏工具,写好代码把工作簿另存为xlam加载宏文件,然后添加到加载项即可使用.xlam文件你可以理解为没有工作表的工作簿,先看动画演示效果: 主 ...

  8. Java导出Excel每列求和,如何使用VBA对Excel中的范围中的每一行求和

    我有一个出勤电子表格,我需要汇总一行并在最后一列中包含总数 . 每行代表一名员工,每列代表一个月中的某一天 . 我使用VBA的原因是因为某些日期列将包含文本,例如TA for Tardy,如果TA存在 ...

  9. 用VBA摇滚Excel工作表

    VBA (Visual Basic for Applications) is widely used for automating MS-Office products. Most of the ti ...

最新文章

  1. 实例教程一:电话拨号器
  2. 2.1.5 操作系统之线程概念与多线程模型
  3. 无线路由器dns服务器不能用,DNS服务器不可用
  4. starting mysql. success!_启动mysql报错解决问题过程
  5. 安卓手机上跑_直接在电脑上浏览操作安卓手机 #效率App #scrcpy
  6. 关于checkbox的奇葩功能以及在权限选择中的应用
  7. c++ find()
  8. mybatis中获取当前时间_mybatis 在xml文件中获取当前时间的sql
  9. 海思mpp_sample例子详解
  10. 国内外三维图形引擎研究现状
  11. 网站在多IE版本兼容性测试工具IETester的使用方法
  12. 为什么很多人家里不准备尺子了?手机怎么测量长度?
  13. cola公司工资java_COLA - 整洁面向对象分层架构
  14. Linux内核与编程
  15. 百度之星2009程序设计大赛 初赛第一场试题
  16. 从零开始学C语言 : 初阶指针
  17. 库函数 qsort 的用法
  18. 【30分钟学完】canvas动画|游戏基础(7):动量守恒与多物体碰撞
  19. 加入雷锋网,与智能未来同行
  20. 外网映射nginx端口丢失问题解决

热门文章

  1. 微分中值定理之罗尔中值定理
  2. 30. 正则表达式匹配(动态规划DP)
  3. [转载]锤子官网的 banner 的 3D 悬浮效果
  4. 聚焦 AI + 大数据展现数据驱动 引领行业创新升级
  5. Python全栈工程师特训班-第三期直播回放-韦玮-专题视频课程
  6. 计算机知识讲座策划,计算机知识讲座策划书.doc
  7. ftp文件夹错误 参数错误_收藏夹和404错误
  8. 38-Figma-页面交互演示制作
  9. photoshop学习笔记之分辨率与色彩模式介绍
  10. git初级使用教程(Git常用基本命令汇总)