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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 自定义函数为什么会这样呢?

   

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


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

主题:自定义函数为什么会这样呢?

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


加好友 发短信
等级:新手上路 帖子:94 积分:65 威望:0 精华:0 注册:2012/1/6 12:53:19
自定义函数为什么会这样呢?  发帖心情 Post By:2015/11/25 16:20:40 [只看该作者]

 我通过自定义函数和PEL交互,选好股后,通过自定义函数把股加到对应的板块中,代码如下,但是通过调试程序,字符传不过去,是空值,这个是啥原因呢


Function AddBlock(Formula,StockCode,BlkName)
    '系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
    AddBlock=0
    Application.MsgOut stockcode & blkname
    set blk=CreateObject("Stock.Block")
    blk.CreateBlock "我的分类",BlkName
    if blk.AddStock(BlkName,StockCode) then
       addblock=1
    end if
End Function


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


加好友 发短信
等级:论坛游侠 帖子:2146 积分:0 威望:0 精华:0 注册:2015/4/5 20:47:17
  发帖心情 Post By:2015/11/25 16:33:19 [只看该作者]

空值说明你没有取出选股后的 品种代码


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


加好友 发短信
等级:新手上路 帖子:94 积分:65 威望:0 精华:0 注册:2012/1/6 12:53:19
  发帖心情 Post By:2015/11/25 16:34:21 [只看该作者]

 不是的,我还没选股,直接用技术指标调用这个函数都直接传不进去参数值进去

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


加好友 发短信
等级:新手上路 帖子:94 积分:65 威望:0 精华:0 注册:2012/1/6 12:53:19
  发帖心情 Post By:2015/11/25 16:37:56 [只看该作者]

 王峰老师回答一下吧:我调试发现只有传递数值才可以,字符串是无法传递过去的,如果我要PEL和VBA之间传递字符串用什么办法呢

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


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

自定义函数无法传递字符串,解决方法看这边http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=9511

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


加好友 发短信
等级:新手上路 帖子:94 积分:65 威望:0 精华:0 注册:2012/1/6 12:53:19
  发帖心情 Post By:2015/11/25 17:18:44 [只看该作者]

谢谢解决了,但是我测试外部对象STOCK.BLOCK发现AddStock这个函数无效,什么参数都是返回1,无法把该股加入到对应板块中
Function AddBlock(Formula,StockCode,BlkName)
   
    AddBlock=0
    stockcode= document.GetExtString("stockcode")
    blkname =document.GetExtString("marketname")
    Application.MsgOut stockcode & blkname
    set blk=CreateObject("Stock.Block")
    blk.CreateBlock "自选股",BlkName 
    if blk.AddStock(BlkName,StockCode) then
       Application.MsgOut "添加个股到板块成功"
       addblock=1
    end if 
End Function

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


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

http://www.weistock.com/bbs/dispbbs.asp?BoardID=5&ID=77581&skin=0

添加后tosave保存下,这边我写过一个例子您看下


 回到顶部