Excel VBAで自動計算・手動計算を設定する-Calculation、CalculateBeforeSave

Excelでデータを入力しているのに、「自動で計算されると思っていたら保存しないと計算されない」とか「あとで計算させたい」と思うことがあります。

VBAで保存方法を自動か手動かなど設定する方法を記録します。

Excel計算方法

 

VBAの設定ではなく、手動で設定したい場合はこちら『Excel 数式が入っているのに自動で計算しない-Excel2013

 

< スポンサーリンク >

 

下図はExcel2016です。

 

構文

計算モードの値を取得または設定します。

Applicationオブジェクト.Calculation

xlCalculationAutomatic=自動
xlCalculationManual=手動
xlCalculationSemiautomatic=データテーブル以外自動

 

ブックの保存前に再計算を行うかの値を取得または設定します。

Applicationオブジェクト.CalculateBeforeSave

True=「ブックの保存前に再計算を行う」がオンになる
False=「ブックの保存前に再計算を行う」がオフになる

 

[計算方法]を「自動」に設定します。

Sub test()
    Application.Calculation = xlCalculationAutomatic
End Sub

Excel計算方法

Excel計算方法

 

[計算方法]を「データテーブル以外自動」に設定します。

Sub test()
    Application.Calculation = xlCalculationSemiautomatic
End Sub

Excel計算方法

Excel計算方法

 

[計算方法]を「手動」に設定し、[ブックの保存前に再計算を行う]にチェックを入れます。

Sub test()
    Application.Calculation = xlCalculationManual
    Application.CalculateBeforeSave = True
End Sub

Excel計算方法

Excel計算方法

 

[計算方法]を「手動」に設定し、[ブックの保存前に再計算を行う]のチェックをはずします。

Sub test()
    Application.Calculation = xlCalculationManual
    Application.CalculateBeforeSave = False
End Sub

Excel計算方法

Excel計算方法

 

< スポンサーリンク >



サブコンテンツ

このページの先頭へ