本ページには広告が含まれています。
計算を実行します。対象となるのは、開かれているすべてのブック、ブック内の特定のワークシート、ワークシート内の指定されたセル範囲のいずれかです。
- 構文
- Application.Calculate
- 引数
- 戻り値
Application オブジェクトを返すメソッド・プロパティ
- Application.Calculate メソッド
- Microsoft Excelアプリケーションを表すApplication オブジェクトを返します。
指定例
計算対象 | 指定例 |
---|---|
開いているすべてのブック | Excel.Application.Calculate |
特定のワークシート | Excel.Worksheets(1).Calculate |
指定されたセル範囲 | Excel.Worksheets(1).Row(2).Calculate |
普段はセルの式を変更するとリアルタイムで再計算されていますが、データの量何千・何万件となると計算に時間が掛かり動作が重くなってしまいます。そこでリアルタイムでの計算が必要ないときは自動計算をオフ、必要なときに必要な箇所だけ計算をし最後に再び自動計算に戻すという方法がおすすめです。
以下がCalculateの使用例です。
CONST xlCalculationAutomatic = -4105
CONST xlCalculationManual = -4135
Excel.Application.Calculation = xlCalculationManual // 自動計算OFF
Excel.Application.Range("A1").Value = 12
Excel.Application.Range("B1").Value = 35
Excel.Application.Range("C1").Value = "=A1+B1" // セルC1に「47」と表示される。
Excel.Application.Range("A1").Value = 26 // 自動計算ONだとセルC1に「61」と表示されるが、自動計算OFFの状態なので値は「47」のまま。
Excel.Application.Range("C1").Calculate // この時点でセルC1の再計算が行われ、値は「61」になる。
Excel.Application.Calculation = xlCalculationAutomatic // 自動計算ON
参考文献
- Application.Calculate メソッド (Excel) | Microsoft Learn
- 【ExcelVBA】手動計算・再計算・自動計算を設定する方法を徹底解説! | 侍エンジニアブログ
関連記事
- XLOPEN関数 (スクリプト関数)
- XLOPEN関数は、Excelまたは OOoのCalcを起動する関数です。第一引数に読み込むファイル名(新規の場合は省略)、第二引数に起動フラグ、第三引数以降にパラメータ(パスワードや読み込み専用)を指定します。
- XLSETDATA関数 (スクリプト関数)
- Excelのセルに値を代入します。
- XLSHEET関数 (スクリプト関数)
- PageSetup オブジェクト
- Excel のシートの印刷設定を表すオブジェクトです。シートの用紙サイズ、余白、方向、印刷タイトルなど、印刷に関連する設定を管理するのに使用されます。
- Application オブジェクト
- Excel全体を表すオブジェクトです。Excel全体に対しての操作、設定変更をしたい場合に使います。
- Border オブジェクト
- 上下左右一つひとつの罫線を表します。
- Characters オブジェクト
- オブジェクトに含まれる文字列の文字を表します。
- Charts オブジェクト
- 指定されたブックまたは作業中のブックにあるすべてのグラフシートのコレクションです。
- Comment オブジェクト
- セルに関連付けられたコメントを表します。
- FullSeriesCollection オブジェクト
- グラフのデータ系列を表すコレクション。