【发布时间】:2017-06-16 06:29:47
【问题描述】:
我想在vba中写一段代码分别产生一个简单的计算,activesheet.cells(i,3) = activesheet.cells(i,2) * activesheet.cells(i,1)
我的问题是当我运行一次代码然后更改单元格(i,2)和单元格(i,1)上的值时,我希望单元格(i,3)单元格自动计算新值
例如,如果 cells(i,2) = 3 并且 cells(i,1) = 2 那么 cells(i,3) = 6 我想手动将excel中的值更改为单元格(i,2)= 4,单元格(i,1)= 4,而无需再次运行我想要自动单元格(i,3)= 16的代码
这段代码在for循环中
【问题讨论】:
-
那么为什么要使用 VBA 呢?您必须处理工作表或工作簿事件才能获得此行为,这样做可能会产生不必要的副作用。如果您的逻辑如此简单,为什么不直接使用公式?
-
@RobinMackenzie 是对的。我知道实现您所描述的唯一方法是订阅 Worksheet.Change 和 Worksheet.Calculate 事件并处理其中的计算;但请不要那样做。
-
到目前为止,您是否尝试过在 VBA 中对其进行编码?如果是这样,你能分享你的代码吗?
-
那家伙告诉 VBA,你的问题是什么?
-
@Pashiamas 冷静下来。很多时候人们要求使用 VBA 只是因为他们不知道他们的问题可以在没有的情况下解决。挑战 VBA 请求完全没问题。