欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → VBA取图表的参数

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有6807人关注过本帖树形打印复制链接

主题:VBA取图表的参数

帅哥哟,离线,有人找我吗?
madson
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/1 14:18:46 [只看该作者]

想请问:
一个框架,有16个窗格,我想获取每个窗格中的一个指标值,并输出到文件,该怎么写?谢谢

另外,如果有若干个这样的框架都需要这样的操作,可以打开另外的框架再执行一篇,还是在程序中有什么方法可以实现?谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
madson
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/1 14:36:48 [只看该作者]

以下是引用admin在2016-7-12 17:43:47的发言:

读取图表的公式数据不是你这么的用法,请参考下面的范例

 

示例:

Sub Test()
'该示例将把技术分析主图上的MA指标前两条线输出到EXCEL中,使用前请注意将K线主图打开,并显示MA指标
' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象

Set Grid = Technic.GetGridByName("Main")
Set Formula = Grid.GetFormulaByIndex(1)

'创建EXCEL对象
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add

'循环遍历得到公式线
for i = 0 to Formula.DataSize-1
'将两条数据线插入到EXCEL第一、二列
objExcel.Cells(i+1,1).Value =Formula.GetBufData("MA1",i)
objExcel.Cells(i+1,2).Value =Formula.GetBufData("MA2",i)
objExcel.Cells(i+1,3).Value =Formula.GetBufDateData(i)
next

End Sub



这段代码新建的Excel人的名称是什么?位置在哪里?


 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/1 15:06:48 [只看该作者]

Set Grid = Technic.GetGridByName("Main")
这里的main就是窗格名,自己建立多个就可以了。

 

这个excel是默认新建的excel,你如果要打开指定excel并且保存,自己搜下excel  vba有很多教程总结的


 回到顶部
帅哥哟,离线,有人找我吗?
madson
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/1 16:16:52 [只看该作者]

这个默认新建的excel存放在哪个位置?

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/1 16:57:06 [只看该作者]

这个是调用saveas然后去存放路径,这些操作建议您通过百度的整理文档进行学习。


 回到顶部
帅哥哟,离线,有人找我吗?
madson
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/2 11:05:59 [只看该作者]

以下是引用madson在2016-8-1 16:16:52的发言:
这个默认新建的excel存放在哪个位置?
执行完,原来直接打开Excel了。
Technic原来是系统框架啊


 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/2 11:29:32 [只看该作者]

这样建立的时候是留在内存里的,并没有所谓的保存位置。

你要指定位置就saveas下,不指定,在退出excel时候,会弹出对话框提示你要保存在哪。

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
madson
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/2 11:37:28 [只看该作者]

我自己写的一个宏,为什么执行时,下拉菜单没有这个宏的名字?

 回到顶部
帅哥哟,离线,有人找我吗?
madson
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/2 11:39:52 [只看该作者]

Sub gethc222()

Set Grid = jy16.GetGridByName("Window1")
Set Formula = Grid.GetFormulaByIndex(1)

'创建EXCEL对象
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add

objExcel.Cells(i+1,1).Value =Formula.GetBufData("资产回撤",Formula.DataSize-1)

End Sub

我只想获得资产回撤的最后一个值,打红色的部分是否可以这么写

 回到顶部
帅哥哟,离线,有人找我吗?
madson
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:113 积分:0 威望:0 精华:0 注册:2016/6/6 17:25:45
  发帖心情 Post By:2016/8/2 11:41:07 [只看该作者]

objExcel.Cells(1,1).Value =Formula.GetBufData("资产回撤", Formula.DataSize-1)

 回到顶部
总数 35 上一页 1 2 3 4 下一页