用vba代码在Excel实时看股票数据
- 2026-11-09 12:53:54
用vba代码在Excel实时看股票数据这是一篇记录折腾(尝试)用vba代码在Excel实时看股票数据的文章,欢迎查看。 今日一句话: 做好自己的小事,很多事没必要去关注。 关注我,领取神秘资料。(慧通86529653防搬运) 




加微信86529653,为你解决具体问题。 坚持分享不易,欢迎大家多多推荐,欢迎点击右下方”在看”鼓励!
* 戳上方蓝字“慧通GISer”关注我,分享记录日常折腾。进入“慧通GISer”公众号 → 点击右上角的 ··· 菜单 → 选择「设为星标」,第一时间看到慧通GISer的文章。
问:用vba代码在Excel实时看股票数据?
答:
新建一个Excel表,输入以下列,然后另存为xlsm格式。

在代码列输入股票代码。


点开Sheet1,输入下列代码:
Function FillOneRow(url As String, r As Integer) As IntegerWith CreateObject("msxml2.xmlhttp").Open "GET", url, False.sendsp = Split(.responsetext, "~")If UBound(sp) > 3 ThenFillOneRow = 1Cells(r, 2).Value = sp(1) '名称Cells(r, 3).Value = sp(3) '当前价格Cells(r, 4).Value = sp(4) '昨日收盘价Dim zhangDie As DoublezhangDie = sp(32)Cells(r, 5).Value = zhangDieIf zhangDie > 0 Then'上涨使用红色Cells(r, 5).Font.Color = vbRedCells(r, 3).Font.Color = vbRedElse'下跌使用绿色Cells(r, 5).Font.Color = &H228B22Cells(r, 3).Font.Color = &H228B22End IfElseFillOneRow = 0End IfEnd WithEnd FunctionSub GetData()Dim succeeded As IntegerDim url As StringDim row As IntegerDim code As StringFor row = 2 To Range("A1").CurrentRegion.Rows.Count '从第二行开始code = Cells(row, 1).ValueIf code <> "" Thenurl = "http://qt.gtimg.cn/q=sh" & code '沪市succeeded = FillOneRow(url, row)If succeeded = 0 Thenurl = "http://qt.gtimg.cn/q=sz" & code '深市succeeded = FillOneRow(url, row)End IfIf succeeded = 0 ThenMsgBox ("获取失败")End IfEnd IfNextEnd Sub'点开ThisWorkbook,输入下列代码Private Sub Workbook_Open()Call Sheet1.GetDataEnd Sub

点击保存按钮,退出代码编辑窗体,回到excel软件界面。
关闭excel软件,然后再次打开这个excel文件,就可以看到股价的数据了。

备注:这是使用腾讯提供的股票接口。
http://qt.gtimg.cn/q=sh600016
做好的excel文件,点阅读原文下载。
---------------------------
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。