马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
首先,非常感谢123456版主的帮助。在他的帮助下(从老师提供的资料和书籍)我把原来要编的公式弄说来了,但还有一些问题,希望高手指点。
这是我的要求: 2008\10\28——2012\12\04期间沪深所有A股的涨停后5日内(包括涨停当天)的开盘、收盘、最高、最低价的数据!
以下是我的公式存在的问题:
1.只能输出一只股票,怎么编入选股公式,把所有股票的要求内容都输出。
2.运行老出错,不知道为什么股票软件老自动退出,但结果是对的,不能公式哪儿编的不好。
3.时间无法控制到精确,怎么能把时间控制的非常精确。
希望大家帮忙一下,能解决一个问题是一个,都非常感谢!
以下是我的公式:
fa:=o;
fb:=c;
fc:=h;
fd:=l;
fy:year;
fm:month;
fx:day;
gpname:=STKLABEL;
<%
vstkname=ffl.vardata("gpname")
va=ffl.vardata("fa")
vb=ffl.vardata("fb")
vc=ffl.vardata("fc")
vd=ffl.vardata("fd")
vy=ffl.vardata("fy")
vm=ffl.vardata("fm")
vx=ffl.vardata("fx")
Set oExcel=CreateObject("excel.application")
oExcel.Visible=True
oExcel.Workbooks.Add
Set oSheet=oExcel.Workbooks(1).Worksheets("sheet1")
oSheet.Activate
for m=0 to 5
oSheet.Cells(1,1).Value="股票代码"
oSheet.Cells(1,2+5*m).Value="日期"
oSheet.Cells(1,3+5*m).Value="开盘价"
oSheet.Cells(1,4+5*m).Value="收盘价"
oSheet.Cells(1,5+5*m).Value="最高价"
oSheet.Cells(1,6+5*m).Value="最低价"
next
j=0
h=0
for i=2 to ubound(vb)
If vc(i)/va(i)>1.097 then j=j+1
oSheet.Cells(j+2,1).Value=vstkname
for k=i+1 to i+6
vdate=DateSerial(vy(k), vm(k), vx(k))
oSheet.Cells(j+2,2+h).Value=vdate
oSheet.Cells(j+2,3+h).Value=round(va(k),2)
oSheet.Cells(j+2,4+h).Value=round(vb(k),2)
oSheet.Cells(j+2,5+h).Value=round(vc(k),2)
oSheet.Cells(j+2,6+h).Value=round(vd(k),2)
h=h+5
next
h=0
next
oExcel.Quit
Set oExcel = Nothing
%>
|