Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率




Windows操作系统的动态链接库(DLL)提供共享代码给其他应用程序,最常见为对话框(窗口)。本文介绍以VBA InputBox函数开启Excel对话框,网络爬虫取得央行利率。

Excel取得网页资料有两个技术性课题:如何有效取得数据、所取得数据如何整理。这一章里面主要分享VBA程序代码运用在Excel取得网页数据,本节重点介绍InputBox函数:

一、这一节完整的VBA程序代码如图所示,除了标蓝色部份和「Connection=WebAress2」之外,其余和上一节相同。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第1張

二、「Dim WebAress1, WebAress2 As String」是使用 Dim 宣告变量的标准Basic语法。各位读者在国中开始接触数学方程式,应该都有学过x,y,z等变数的用法,VBA里的Dim X As Y也是相同概念,其中X是任意变量,Y则是数据类型,主要有Integer(整数)、Single(数字)String(字符串)等,详细可参考如图Excel说明手册。宣告变量有两个好处,其一是让程序结构很完整,逻辑清楚容易理解,其二是有效运用资源,因为如果不宣告变量,系统默认是可作为任意类型的「Variant」,占用内存容量是最大的。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第2張

三、「WebAress1 = InputBox(“请输入网页网址”, “网址输入”)」,将光标移到程序代码的「InputBox」文字中,按下「F1」,即会跳出Excel关于这个函数的说明:「在对话框中显示提示,等待用户输入文字或单击按钮,并传回包含文本框内容的字符串。」如图所示,第一个组件(参数)prompt是对话框中的讯息,在此范例是「”请输入网页网址”」,第二个组件title是对话框的标题栏,于稍后步骤执行程序时,一看就能理解这两个组件的用法。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第3張

四、关于程序代码最后补充两点:「WebAress2 = “URL;” & WebAress1」,这是VBA里合并字符串用法,等同于Excel的CONCATENATE函数,后面的WebAress1是InputBox带出来,本身即为文字数据类似,所以毋须再加双引号。从WebAress1到WebAress2,方能引用对话框所输入的网址:「Connection:=WebAress2」,像这样多个变量依序组合变化,也是VBA写程序的主要技巧之一。

快速组合键「Alt+F8」叫出宏的对话框,选择「DownloadWeb」宏,即为刚才所编辑的程序代码,可以按下右下角的「选项」。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第4張

五、在「宏选项」这里,可以编辑维护「快捷键」及「描述」。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第5張

六、执行宏,跳出InputBox对话框,输入中央银行所发布五大银行利率的网址:「www.cbc.gov.tw/tw/cp-371-1040-5C7A0-1.html」。参考这个对话框,应该能理解InputBox函数各参数的用法。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第6張

七、输入网址,按「确定」之后,Excel即取得中央银行所发布的五大银行利率网页资料。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第7張

八、附上中央银行网页截图供参考。

Excel VBA网络爬虫,InputBox函数开启对话框,输入中央银行网址取得利率 VBA网络爬虫 第8張

这一节介绍如何运用InputBox函数输入网址、取得网页数据。Excel强大的地方之一,在于可以连结其他单元格内容或者进一步作处理,以这里的范例而言,除了在对话框直接输入网址,也希望是在同一工作表或者其他工作表已经有填写好的网址,然后如同惯常的Excel操作,于对话框引用链接到其他单元格。这个InputBox函数并没有办法做到﹐必须便VBA里面的InputBox方法,留待下节介绍。

本文内容取自《人人做得到的网络数据整理术》,书本仍然是最好的学习方法,今天就买本书吧!

金石堂网络书店网址:

https://www.kingstone.com.tw/basic/2014941521928


有系統、全面性的學習Excel職場應用,:會計人的Excel小教室PressPlay頻道


當前文章分類:
VBA网络爬虫