打开Excel文件时如何将计算模式设置为手动?

我的excel文件包含很多公式,因此我希望它打开后立即将计算模式设置为手动。 否则计算自动开始,我不得不等待几个小时。 我发现这个网页:

http://excel.tips.net/T001988_Forcing_Manual_Calculation_For_a_Workbook.html

这应该能够做到这一点。 但是它不适用于我的excel文件。 它指出,在VBA代码中,在“ThisWorkbook”部分,应该input以下代码:

Private Sub Workbook_Open() Application.Calculation = xlManual Application.CalculateBeforeSave = False End Sub 

正如所指出的那样,在我的情况下它不起作用。 有人有另一种解决scheme吗?

提前致谢!

最好的办法是在你想打开的文件所在的文件夹中创build一个名为“launcher.xlsm”的Excel。 在“启动器”文件中,将以下代码放在“工作簿”对象中,但将常量TargetWBName设置为要打开的文件的名称。

 Private Const TargetWBName As String = "myworkbook.xlsx" '// First, a function to tell us if the workbook is already open... Function WorkbookOpen(WorkBookName As String) As Boolean ' returns TRUE if the workbook is open WorkbookOpen = False On Error GoTo WorkBookNotOpen If Len(Application.Workbooks(WorkBookName).Name) > 0 Then WorkbookOpen = True Exit Function End If WorkBookNotOpen: End Function Private Sub Workbook_Open() 'Check if our target workbook is open If WorkbookOpen(TargetWBName) = False Then 'set calculation to manual Application.Calculation = xlCalculationManual Workbooks.Open ThisWorkbook.Path & "\" & TargetWBName DoEvents Me.Close False End If End Sub 

将常量“TargetWBName”设置为要打开的工作簿的名称。 该代码将简单地将计算转换为手动,然后打开文件。 启动程序文件将自动closures。 *注意:如果您不希望在每次打开此文件(取决于您的安全设置)时提示“启用内容”,则应暂时删除“me.close”以防止其自行closures,保存文件和将其设置为可信,然后在再次保存之前重新启用“me.close”调用。 或者,您可以将Me.Close后的False设置为True