「vba 特定のシート 再計算」
「excel vba 現在のシートのみ再計算」
「アクティブシートのみさいけいs再計算マクロ」
といった検索で、このサイト『インストラクターのネタ帳』へのアクセスが時折あります。
Excel VBAで、特定のワークシートのみ再計算を行うには、どのようなコードを書けばいいのかを探していた方による検索キーワードです。
アクティブシートのみ再計算するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブなワークシートのみ再計算が行われます。ActiveSheet.Calculate
End Sub
WorksheetオブジェクトのCalculateメソッドで、特定のワークシートのみ再計算を行うことができます。
上記のプロシージャの場合、ActiveSheetプロパティでアクティブなワークシートを表すWorksheetオブジェクトを取得していますから、アクティブシートのみの再計算です。
例えば「Worksheets(1).Calculate」なら一番左のワークシートのみの再計算、「Worksheets("Sheet1").Calculate」ならばSheet1シートのみの再計算です。
マクロ記録も使いましょう
Excelには[数式タブ]に、アクティブシートのみ再計算するコマンドが用意されています。
この[シート再計算]コマンドを実行する操作をマクロ記録すると、以下のようなSubプロシージャが作られます。
Sub Macro1()
ActiveSheet.Calculate
End Sub
先にご紹介したのと、まったく同じコードです。
マクロ記録では、いまいちなコードが作られてしまうことが多いのも事実ですが、いきなり検索するよりも、試しにやってみるほうが、はるかに大切だと私は考えます。
Home » エクセルマクロ・Excel VBAの使い方 » Sheets・Worksheet » VBAで特定シートのみ再計算する-Worksheet.Calculate