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


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

   

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


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

主题:VBA取图表的参数

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/7/17 12:39:54 [显示全部帖子]

excel只是范例,你不需要去关注。
只需要看这一部分就可以了,取得图表对应的公式对象,然后对这个对象取得输出值
Set Grid = Technic.GetGridByName("Main")
Set Formula = Grid.GetFormulaByIndex(1)
application.msgout  Formula.GetBufData("MA1", Formula.DataSize-1)



 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | 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有很多教程总结的


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


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

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


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


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

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

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

 

 


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/2 12:31:58 [显示全部帖子]

宏名那边自己输入gethc222

然后去执行


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/2 14:05:29 [显示全部帖子]

右键-框架属性-联动

根据该顺序来


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/2 15:42:57 [显示全部帖子]

是的,不支持修改

话说如果你要指定的话自己直接根据名称来就行了,就好比持仓栏轮询,具体要选择哪一个你在代码里是自己要再做处理的,而不是通过编号去直接得到自己需要的对象

是的,框架必须打开。本身就是框架对象你不打开怎么获取

如果你要获取指标值,直接用stkindi就行了,这个不依据窗格的


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/2 16:54:16 [显示全部帖子]

Set obj = CreateObject("Excel.Application")
Set OFile = obj.Workbooks.Open("G:\buyorders.xls")
obj.Visible = false
Set objSheet = OFile.Sheets(1)

 

 

建议你百度个excel vb操作大全,基本说明看那个比这么问来的高效的多,编程看专门编程手册这应该是一个好习惯的


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/8/3 12:57:17 [显示全部帖子]

obj.Cells(1,1).Value =50

这样去写入值能否写入,如果可以说吗你的最新行情数据取值有问题,用msgout输出下行情数据局自行分析下。

遇到问题可以先自行寻找分析下问题,如果报错是报什么错,如果没有写入值,那么自身取值取得有问题还是取值正确后面的写入有问题

这些作为编程而言您应该是自己先可以去调适一番的

 

[此贴子已经被作者于2016-8-3 13:02:29编辑过]

 回到顶部