Excelで特定の範囲をクリックするたびに再計算が行われるVBAマクロの設置方法
ExcelでRAND関数やNOW関数を使用している場合、特定の範囲をクリックするたびに再計算を行いたいことがあります。今回は、特定の範囲をクリックするたびに再計算が行われるVBAマクロの設置方法について詳しく解説します。
VBAエディターを開く
まず、ExcelのVBAエディターを開きます。以下の手順に従ってください。
- Excelを開き、再計算を行いたいワークシートを選択します。
Alt + F11
を押してVBAエディターを開きます。
対象ワークシートのコードウィンドウを開く
次に、再計算を行いたいワークシートのコードウィンドウを開きます。
- 左側の「プロジェクトエクスプローラー」から対象のワークシート(例:Sheet乙)を選択し、ダブルクリックします。
VBAコードを入力
開いたコードウィンドウに以下のコードを入力します。このコードは、名前付き範囲(例:”MyRange”)をクリックするたびに再計算を実行します。
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ' 名前付き範囲をクリックしたときのみ再計算 If Not Intersect(Target, Me.Range("MyRange")) Is Nothing Then Me.Calculate End If End Sub
また次のコードは、指定したセル範囲(例:B3:B11)をクリックするたびに再計算を実行します。
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ' 特定のセル範囲をクリックしたときのみ再計算 If Not Intersect(Target, Me.Range("B3:B11")) Is Nothing Then Me.Calculate End If End Sub
コードを保存
VBAエディターを閉じて、変更を保存します。
動作確認
Excelに戻り、指定した名前付き範囲(例:”MyRange”)もしくはセル範囲(例:”B3:B11″)をクリックして、再計算が行われることを確認します。
この方法を使用すると、Excelで指定した名前付き範囲をクリックするたびに再計算が行われます。これは、RAND関数や他の動的関数を使用する際に非常に便利です。簡単なVBAコードを使用することで、Excelの機能を拡張し、効率的な作業を実現することができます。
コメント