作者aj4rmp4 (老穆)
看板Visual_Basic
标题[VBA ]Excel VBA 执行长时间运算巨集
时间Wed May 8 22:37:01 2013
请问EXCEL执行巨集是否有运算时间限制
最近写了一个用基因演算法跑的VBA程式专案
有特别写一个显示当前运算进度,演算大纲如下
call inputdata
do
---
演算法过程
---
range8 = sheet1.Cells(2, 11)
range8.Value = now_iteration * 100 / total_iteration & " %"
loop while now_iteration < total_iteration
call outputdata
当演算法的迭代终止条件不高时,可以很顺的显示运算完成的百分比
直到结束运算并显示结果
可是当把演算法的迭代终止条件设定高一点,EXCEL执行时会卡住
有时候是不会更新当前运算进度,但实际是会跑的
就是会卡一下,又突然完成运算并显示结果
有时候就完全卡住,像当掉,又没办法看是卡在哪个程序(有试过CTRL+PAUSE/BREAK)
但是同样的程式码,在visual studio 的EXCEL开发环境又可以顺利执行很高的迭代终止
条件,并且会很顺的显示运算进度,所以应该不是演算法的问题
这是EXCEL巨集的问题吗?另外可以在卡住的时候中断执行吗?
(注,程式撰写时期是在visual studio 的EXCEL开发环境
但当程式建置後没办法给别台电脑跑
查了原因跟.NET FRAMEWORK和是要一些授权设定和组件设定等等有关
一直搞不定,也不可太能要客户弄这些很麻烦的.NET 相关设定等等
所以把程式码移植到EXCEL巨集)
先谢谢各位
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.59.229
1F:→ MOONRAKER:Excel巨集perf不会好是一定的 05/09 02:15
2F:→ MOONRAKER:.NET设定应该可以包装成安装程式来处理 05/09 02:16