文学知识网作文、诗词、文学知识分享平台

怎么把股票的涨幅导出成表格

新人999|
40

原标题:VBA在线掌握库存历史数据

文章来源于网络,若有侵权,请联系我们删除。

  【分享成果,随喜正能量】学会宽容,严以律己,宽以待人。对自己,不要太放纵,对别人,不要太苛刻。人与人之间都是相互的,如果你自己做不到,就没有理由去过分要求别人。在努力做好自己的同时,学会给别人多一些宽容,世界会因此变得更加温暖。。

  《VBA信息获取与处理》教程是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。教程共两册,八十四讲。今日的内容是专题六“VBA中利用XMLHTTP完成网抓数据”的第7讲:VBA网抓股票历史数据

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  第七节利用XMLHTTP抓取网易财经股票历史数据

  实现场景:从网页的数据中提取给定股票的信息到EXCEL表格中,这些信息包括某一段时间的开盘价、最高价、最低价、收盘价、涨跌额、涨跌幅(%)%u3001成交量(手)、成交金额(万元)、振幅(%)%u3001换手率(%)%u3002如下图,要提取出“601899”股票的20年第二季度的数据。

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  1应用XMLHTTP实现网抓股票数据的思路分析

  我们首先仍是建立应用CreateObject("MSXML2.XMLHTTP")和CreateObject("htmlfile")第二个应用用于处理提取出来的网页数据,然后我们在“网易财经”的网址上抓取数据

  网易财经”的网址:http://quotes.money.163.com/trade/lsjysj_"&股票名称。

  抓取时利用.Open"GET",strURL,False及.send的命令,数据返回时将.responseText赋给第二个引用innerHTML属性。innerHTML属性返回表格行的开始和结束标签之间的HTML。

  提取完数据后我们利用循环语句来提取数据。

  在循环语句中我们要有行和列的区分,逐一提取行列的数据。在网页表格处理的时候,我们可以利用遍历的方法。可以用类似于工作表的行:Rows,单元格:Cells的表述方案。

  最后要记得内存的释放。

  2应用XMLHTTP实现网抓股票数据的代码实现

  下面我们看实现上述思路的代码部分,我直接给出了我的代码:

  SubmyNZE()'网易财经股票历史数据的抓取

  [代码见教程]

  EndSub

  代码截图:

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  代码解读:

  1)SetobjXMLHTTP=CreateObject("MSXML2.XMLHTTP")

  SetobjDOM=CreateObject("htmlfile")

  上述代码建立了两个引用。

  2)GPCode=Cells(1,4).Value

  GPY=Cells(2,4).Value

  GPJ=Cells(3,4).Value

  上述代码提取股票的名称,历史数据的年,季度。

  3)strURL="http://quotes.money.163.com/trade/lsjysj_"&GPCode

  strURL=strURL&".html?year="&GPY

  strURL=strURL&"&season="&GPJ

  建立网址的代码。

  4)WithobjXMLHTTP

  .Open"GET",strURL,False

  .send

  objDOM.body.innerHTML=.responseText

  EndWith

  上述代码从网页中提取数据,并将数据赋值给objDOM.body.innerHTML,objDOM是我们建立的第二个引用对象。

  5)ForEachobjTRInobjTable.Rows

  HRow=HRow1

  LCol=0

  ForEachobjCellInobjTR.Cells

  LCol=LCol1

  Cells(HRow4,LCol)=objCell.innerText

  NextobjCell

  Next

  上述代码是从("TABLE")(3)中提取数据到工作表中。

  6)SetobjXMLHTTP=Nothing

  SetobjDOM=Nothing

  SetobjTable=Nothing

  SetobjTR=Nothing

  SetobjCell=Nothing

  上述代码是释放内存。

  3应用XMLHTTP实现网抓股票数据的实现效果

  最后,我们点击运行按钮,看看随后的实现效果:

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  将这种数据提取到工作表中后,我们就可以做数据分析处理了。确实,我们在股票分析的时候也非常需要这种数据的提取。

  本节知识点回向:

  怎样提取网页股票的历史数据到工作表中?这种方案和之前的哪节知识点类似?

  本讲参考程序文件:006工作表.XLSM

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序:

怎样把股票的涨幅导出成表格

怎样把股票的涨幅导出成表格(网络配图 侵删)

  【分享成果,随喜正能量】:学会高傲,任何时候,都不要妄自菲薄。你要知道,世界不会放弃你,只有你会放弃自己。每一个女人都要适当保持高傲,这并不是过分看高自己,而是给自己一份自信和勇气。毕竟,这个世界,对女人来说,总还是有点不够温柔。