以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  新手学VBA,请求帮助,谢谢  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=76581)

--  作者:wjs
--  发布时间:2015/3/18 11:00:14
--  新手学VBA,请求帮助,谢谢

读取持仓数据,代码有误,运行了,也读取不了数据。哪里错了。

Sub Start_CommandButton1_Click()
    Application.ActivateFrame("K")
    Set Grid = Application.GetActiveGrid()
    Set Market = grid.GetMarketinfo()
   
    Set ReportData = Grid.GetReportData()

Private Accountid,Ibuyhold,Isellhold,Buyprice,Sellprice
   Sub Getholdbycode(Saccount,Scode,Smarket)
      Dim i,k
      Dim Buyholding
      Dim Buycost
      Dim Buytodayholding
      Dim Sellholding
      Dim Sellcost
      Dim Selltodayholding
      Dim Pnl
      Dim Usemargin
      Dim Code
      Dim Market

     On Error Resume Next
     Accountstatus=Order.Account2(2,Saccount)
     \'Application.Msgout Scode & "," & Smarket & "," & Saccount & ",Nextcode:" & Nextcode & ",账户状态:" & Accountstatus
      If Accountstatus=255 Or Accountstatus="" Then
          Exit Sub
      End If
      Call Order.Holdinginfobycode2(Scode,Smarket,Buyholding,Buycost,Buytodayholding,Sellholding,Sellcost,Selltodayholding,Pnl,Usemargin,Saccount)
     Ibuyhold=Buyholding
     Isellhold=Sellholding
     Buyprice=Buycost
     Sellprice=Sellcost 
   End Sub
 End Sub

[此贴子已经被作者于2015/3/18 11:01:21编辑过]

--  作者:wjs
--  发布时间:2015/3/18 11:03:44
--  
附件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:start.zip

[此贴子已经被作者于2015/3/18 11:05:18编辑过]

--  作者:yukizzc
--  发布时间:2015/3/18 16:57:22
--  

Application.ActivateFrame("technic")
    Set Grid = Application.GetActiveGrid()       //获取窗格对象
    
    market =Grid.Market                               //取得当前市场以及品质代码。
    code = Grid.StockLabel
   
call Getholdbycode("1000",code,Market)      //调用下面的读取持仓过程,这部分过程没有问题。


--  作者:wjs
--  发布时间:2015/3/18 21:51:10
--  
非常感谢指教,受益非浅。改好。