Excel中的Application对象内藏着一个非常实用的方法,它能使我们手动触发工作表中的公式重新计算。
通常情况下,Excel并不是即时计算工作表内的所有公式。有时,我们需要手动触发计算,或者在某些特定条件下,比如刷新工作表时,Excel才会启动计算进程。
要利用这个方法,我们首先需要创建一个Application对象变量,然后通过这个变量来调用Calculate方法。
具体语法如下:
在学习Calculate方法时,我们还需要了解另外两个相似的方法:CalculateFull和CalculateFullRebuild。
这两个方法分别用于强制进行完整计算和重建从属关系。它们会无视任何条件,直接对工作表内的公式进行计算。
从属关系是指当一个表格的内容被另一个表格的内容所关联时,这个方法会重新进行一次关联,相当于重新输入公式。
下面是一个简单的示例:
在这个示例中,黄色区域是包含公式的单元格。执行代码后,这些单元格的内容将重新被计算一次。由于我们没有修改任何参数,所以单元格的内容看起来没有变化,但实际上已经发生了变化。
如果在另一台电脑或更改Excel版本后打开工作簿,会提示是否重新计算。你可以试着操作一下。
以下是使用VBA代码实现公式重新计算的示例:
'计算所有打开的工作簿
Private Sub CommandButton1_Click()
Application.Calculate
End Sub
'计算指定工作表
Private Sub CommandButton2_Click()
ActiveSheet.Calculate
End Sub
'计算指定区域
Private Sub CommandButton3_Click()
ActiveSheet.Columns("F").Calculate
End Sub
'强制对所有打开工作簿中的数据进行完整计算
Private Sub CommandButton4_Click()
If Application.CalculationVersion <> ThisWorkbook.CalculationVersion Then
Application.CalculateFull
End If
End Sub
'对于所有打开的工作簿,强制数据的完整计算并重建从属关系
Private Sub CommandButton5_Click()
If Application.CalculationVersion <> ThisWorkbook.CalculationVersion Then
Application.CalculateFullRebuild
End If
End Sub
这些代码示例展示了如何使用不同的方法来强制计算工作表内的公式。
有时候,这个功能对于处理变化频繁的数据(如股票、基金等)非常有用,因为我们可以即时看到数据的变化。
你可以根据自己的需求来设置这些代码。
欢迎关注、收藏
---END---
转载请注明来自广州玛斯顿影音有限公司,本文标题:《Application对象方法介绍,如何重新计算工作表单元格公式 》