2014-11-01 115 views
0

的条件擦除部分我有结构的工作簿不是很不像这一个(但更高级的):Excel的VBA:工作表

https://www.youtube.com/watch?v=UeGncSFijUM

即:

(1)工作表其中一行进行一些涉及rand()的计算,并将结果值传送到下一行,在该行中进行类似的计算并在最多250行之后发生最终结果。

(2)然后,Excel重复该计算250 20000次

(3)和做在20000个独立结果一些计算。

很多都是通过函数完成的,我主要使用VBA来控制计算流。

这一切都需要一些时间,我试图一步一步地优化它。

现在每个(1)的结果很可能在第250行之前在平均行125上达到很多。如果在第125行满足该条件,我想抹掉其余的计算。通过if语句调用VBA脚本来清除剩余单元格的内容。

是否可以从函数中调用VBA语句?

+0

您不能从工作表调用宏,但可以调用UDF函数。但是,UDF不能更改任何单元,而是调用它的单元。我想某种公共布尔变量可能会暂停循环VBA操作,并且UDf *可能会更改其状态。 – Jeeped 2014-11-01 14:03:38

回答

0

这是我在盒子外面的一些想法的最佳拍摄。

您是否可以在工作表变更事件上使用Call MethodnameCallByName(wsWorksheet, sMethodname, VbMethod, vOptionalVariantToPass)来检查公式生成的特定值?