Rss & SiteMap

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

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

标题:VBA编译时提示框架内代码缺少语句,为何?

1楼
ssfy_hf 发表于:2015/12/26 20:00:51
编写一个自定义函数,在编译时提示‘1024’错误,显示Technic框架内代码缺少语句,显示如下:

1  '由于框架内的代码作用于全局,并且不会随着工程项目切换,
2  '因此建议框架对象内的代码只编写与本框架事件有关的代码,不要使用作用于整个工程的变量及过程函数。
3
4  Sub MainFrame9_ChangeStock(Grid, Code, Market, Result)
5     if MoreCyc.HasVisible = 1 then
6         call morecyc.GetGridByName("Window1").ChangeStock(code,market)
7         call morecyc.GetGridByName("Window5").ChangeStock(code,market)
8         call morecyc.GetGridByName("Window2").ChangeStock(code,market)
9         call morecyc.GetGridByName("Window7").ChangeStock(code,market)
10       call morecyc.GetGridByName("Window8").ChangeStock(code,market)
11       call morecyc.GetGridByName("Window9").ChangeStock(code,market)
12       call morecyc.GetGridByName("Window3").ChangeStock(code,market)
13       call morecyc.GetGridByName("Window6").ChangeStock(code,market)
14       call morecyc.GetGridByName("Window4").ChangeStock(code,market)
15       morecyc.InitAllGrid
16    end if
17  End Sub
18
19  Sub Technic_RemoveFormula(Grid, FormulaName, Result)
20     if Grid.name = "Main" and FormulaName = "MAIN" then
21   result = 1
22  end if
23  End Sub

提示第9行出错。但是我并没有对框架代码进行过编辑,这是什么原因?

另外,现在VBA的调试菜单怎么调不出来了?

2楼
王锋 发表于:2015/12/27 18:41:23
检查一下是否存在Window7这个窗格
3楼
ssfy_hf 发表于:2015/12/28 21:59:46
没有,而且把整个1—23行都注释掉之后编译还提示编译器错误‘1024’,真是奇怪了
4楼
ssfy_hf 发表于:2015/12/28 22:08:01
当我把Technic框架本项目移除后,就会显示另一个框架代码在第三行缺少语句,一直编译不成功

5楼
王锋 发表于:2015/12/28 22:24:42
可能是VBA的工程代码被你给改乱了,建议你重新新建一个VBA的项目工程,让系统重新初始化VBA的环境状态
6楼
ssfy_hf 发表于:2016/1/2 15:16:14
问题查找到了,是自定义函数内部编写错误,问题是金字塔在发现编译错误时,不能在有问题的那行代码显示错误,而是在另外框架函数页面显示,这样一是不能帮助编写者找到问题所在之处,更容易引起误会,还请修正。
共6 条记录, 每页显示 10 条, 页签: [1]


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