① VBA编程读入数据
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
'假设股票数据在1,2行,用户输入股票名称的单元格为“A4”
Set objRange = Range("A4")
'判断用户是否在A4中进行输入
If Not Intersect(Target, objRange) Is Nothing Then
strInput = objRange.Value
'调用HLookUp对数据进行检索
With Application.WorksheetFunction
strOutput = .HLookup(strInput, Range("1:2"), 2, 0)
End With
'检索失败进行提示
If strOutput = "" Then
MsgBox "无效输入"
'检索成功,新建Excel文档,将用户输入数据和查询结果赋值给指定单元格
Else
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Visible = True
Set objWorkBook = objExcelApp.Workbooks.Add
Set objSheet = objWorkBook.Sheets.Item(1)
objSheet.Cells(1, 1).Value = strInput
objSheet.Cells(2, 1).Value = strOutput
objWorkBook.SaveAs "D:\test\Result.xls"
objWorkBook.Close
objExcelApp.Quit
Set objExcelApp = Nothing
End If
End If
End Sub
不知道这样是否是你想要的~
② 请问如何批量下载股票历史数据
1
打开Choice金融终端,启动Excel插件
注意事项
下载中数据量庞大时,耗时可能会稍长,当然也比传统的下载要省事很多
③ 跪求高手帮我写VBA程序,把所有股票(上证和深证等)当日和前5日收盘价、成交量和流通股列出来
这个功能在一般的股票软件上自带,不需要额外编写程序或公式,我用的是通达信,操作步骤如下:打开软件,进入板块行情---点版面上方的“报表分析”---选择“阶段排行”---设置“起始日期”等---点“确定”---然后在板块行情页面,在上方任一显示栏目上点右键,换成你想关注的基本栏目,如收盘价、成交量、流通盘、流通市值,即可。
股票公式专家团为你解答,希望能帮到你,祝投资顺利。
④ EXCEL如何用VBA自动获取每个股票近几天的涨幅
excel大量获取数据是比较慢的 你这种得用vb写dll多线程刷新数据才行 私聊
⑤ 1、如何将财经类网上股票历年分红数据提取到EXCEL表里,并获取股票实时价格
回答此类问题的描述会被网络知道判违规。
请在“数据”选项下的“自网站”进行相应的操作,然后设置数据更新频率,即可。
⑥ 如何用VBA从WIND里取股票数据
首先 你需要有个万德的帐号,因为取得股票也是需要excel登录万德插件的
⑦ 如何下载股票历史成交数据到Excel或txt
以华中智能股票软件为例:(以Think pad X13 锐龙版笔记本电脑,Windows 10 操作为例)首先切换到要下载数据的股票K线形态,按“F1”进入“日线某某股票历史成交”,点击鼠标右键->数据导出->导出所有数据->在“请选择导出的类型”中选择excel或txt
补充资料:
如何获取所有股票历史数据:
如果要对股市进行分析,首先就要获取所有股票的历史数据,只有通过股票的历史数据,我们才能分析出股市的规律。
(以Think pad X13 锐龙版笔记本电脑,Windows 10 操作为例)
一、工具/原料
1、EXCEL2007或者以上版本,不能使用WPS
2、电脑1g内存1核处理器及以上配置
3、拥有较强逻辑分析能力以及少量智慧及以上的大脑一颗
方法/步骤:
第一步,获取股票代码,复制其中一部分到第一个工作表A4到A127,然后通过程序把每一个代码写入到不同的工作表A2位置,并对该工作表以该股票代码命名。程序如下:
Sub 工作表命名()
For i = 4 To 127
Sheets(i).Range("a2") = "'" & Sheets(1).Range("a" & i)
Next i
For i = 4 To Sheets.Count
Sheets(i).Name = Sheets(i).Range("a2").Value
Next
End Sub
第二步,获取股票历史数据。代码如下:
Private Function GetSource(sURL As String) As String
Dim oXHTTP As Object
Set oXHTTP = CreateObject("MSXML2.XMLHTTP")
oXHTTP.Open "GET", sURL, False
oXHTTP.Send
GetSource = oXHTTP.responsetext
Set oXHTTP = Nothing
End Function
Sub 历史数据()
Dim objXML As Object
Dim txtContent As String
Dim i As Integer
Dim strCode As String
Dim gp As String
Dim kaishihang
Dim arr, arr1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9, arr10, arr11
On Error Resume Next
EndRow = Range("a65536").End(xlUp).Row
startRow = 4
If startRow <= EndRow Then
Range(Cells(startRow, 1), Cells(EndRow, 11)).Value = ""
Else
Exit Sub
End If
Set objXML = CreateObject("Microsoft.XMLHTTP")
gp = [A2]
For h = 1 To 4
For m = 1 To 4
kaishihang = [A65535].End(xlUp).Row
nian = Replace(Str(Year(Now) + 1 - h), " ", "")
ji = Replace(Str(4 + 1 - m), " ", "")
With objXML
.Open "GET", "http://quotes.money.163.com/trade/lsjyj_" + gp + ".html?year=" + nian + "&season=" + ji + "", False
.Send
If objXML.Status = 200 Then
txtContent = .responsetext
arr = Split(txtContent, "'>
⑧ 怎么利用vba获取财经网上股票股价的实时数据
1 这种软件一般都是花钱的,主要是涉及到xml文件的解析。
2 如果想自己研究那就网上搜集一些资料学习。
以下提供一些网络的资料供参考。具体自己的需求还要自己编写程序。
https://..com/question/1834142973359770260.html
https://www.hu.com/question/49538066/answer/129694646
⑨ Excel vba股价数据怎么自动更新
引用数据无效: 你使用那种方式引用的,用函数的话按F9就自动更新了。 如果是打开Excel,让数据实事更新,比较困难,只能基于vba的定时管理来刷新了。
⑩ 怎样用EXCEL 实时读取 股票日线数据
定量分析的第一步,是获取数据。
获取股票历史行情数据最方便的途径,就是直接读取股票行情软件留在你电脑中的日线数据文件。
但如果不是程序员,电脑里一般不会有VB、VC之类的编程语言。
其实,大家的电脑中一般都有OFFICE。OFFICE中的EXCEL自带了一个VBA语言的编程环境。功能也很强大。
我用EXCEL里的VBA编写了一段代码,读取通达信股票行情软件的日线文件。已经测试通过。
代码如下。与爱好定量分析的朋友分享。
TypeMyType
a1AsLong'标示码
a2AsLong'日期
a3AsSingle'开盘价
a4AsSingle'最高价
a5AsSingle'最低价
a6AsSingle'收盘价
a7AsSingle'成交金额
a8AsLong'成交量
EndType
Sub按钮1_Click()
DimFile2AsInteger
DimbAsMyType
File1=FreeFile
Opensh600000.dayForBinaryAccessReadAs#File1i=1DoWhileNotEOF(File1)
Get#File1,,b
Cells(i,1)=b.a1
Cells(i,2)=b.a2
Cells(i,3)=b.a3
Cells(i,4)=b.a4
Cells(i,5)=b.a5
Cells(i,6)=b.a6