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

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

VBA計算方法自動手動を切り替える設定方法を記録します。

自動、手動の切り替えは「Calculation」プロパティを使います。

VBAの設定ではなく、手動で設定したい場合はこちら

< スポンサーリンク >





「Calculation」プロパティ構文

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

Applicationオブジェクト.Calculation

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

 

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

Applicationオブジェクト.CalculateBeforeSave

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

 

VBAで計算方法を自動、手動に切り替える例

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

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計算方法

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします