Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:自定义一个取光标数值的函数 但是通不过

1楼
qq代人发帖 发表于:2020/3/2 13:03:33
请教:我想自定义一个取光标数值的函数 但是通不过  请帮忙看看 谢谢
Function SYSPARAM(6)(Grid, Index, x, y)
SYSPARAM(6)=0
    '防止公式逐周期模式时调用
    If Formula.WorkMode = 0 Then
        Exit Function 
    End If
    
    dim Date
    dim Values
    call Grid.ValueByPoint(x,y,Date,Values,true)
    SYSPARAM(6)=Values
End Function
2楼
yukizzc 发表于:2020/3/2 13:50:25

http://www.weistock.com/WeisoftHelp/visualbasiczidingyihanshu.htm

可以通过两种方法添加自定义函数:

1、在公式编辑器界面中,鼠标在“函数”解释定义区单击右键,然后选择“添加自定义函数”。

2、在Visual Basic工程管理器中选择Function模块,进入Visual Basic编辑界面,然后选择“插入”菜单中的“过程”。

 

 

必须要按照这种格式去定义,另外看下例子。还有光标数值这种做不到,传入的Formula这个对象是公式对象没法再去获取你grid对象。vba和pel交互传递的只能是公式对象其他不行

3楼
小心翼翼 发表于:2020/3/3 0:27:38
Function SYSPARAM(6)(Grid, Index, x, y)
SYSPARAM(6)=0
    dim Date
    dim Values
    call Grid.ValueByPoint(x,y,Date,Values,true)
    SYSPARAM(6)=Values
End Function

这样行不行?
4楼
小心翼翼 发表于:2020/3/3 0:33:55
取光标的数值用 sub可以做到  为啥用function个就不行呢?
5楼
yukizzc 发表于:2020/3/3 13:24:20

自定义函数是pel公式和vba之间交互,pel公式里是没有当前光标这个对象的。

你如果要光标读取就不要用这种交互方式,自己直接在vba里面写不要传递给pel使用

6楼
小心翼翼 发表于:2020/3/12 19:34:32
那怎么用在指标公式里面呢?

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
    Private Type POINTAPI             '定义点(Point)结构
        X As Long        '点在X坐标(横坐标)上的坐标值
        Y As Long        '点在Y坐标(纵坐标)上的坐标值
    End Type


 Dim MyPoint As POINTAPI
'    dl&= GetCursorPos(MyPoint)        '调用函数,获取屏幕鼠标坐标
 Dim Ypos As Long
'    Ypos=MyPoint.Y
7楼
yukizzc 发表于:2020/3/14 15:54:15

GetPrivateProfileFloat

INI文件中读取单精度浮点数变量

 

WritePrivateProfileFloat

写单精度浮点数变量到INI文件

vba里把坐标位置通过ini文件方式写到文件里,然后pel里也有读取ini文件的函数

读取INI文件字符串。用法:GETINIFILESTRING(PATH,APP,KEYNAME);PATH为INI文件的路径名,APP为节点名,KEYNAME为数据项名称
例如:GETINIFILESTRING('C:\TESTNINFILE.INI','SETTING','MYDATA');表示在C:\TESTNINFILE.INI文件中读取SETTING节点的,项名称为MYDATA的字符串数据.

 

这样做交互试试。

你是的这样操作的目的是什么??本身图上十字光标能看到值的,如果用这个来控制程序太不现实

共7 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 2 queries.