Vba: 別のシートからセルの値を取得する方法
VBA で次のメソッドを使用して、別のシートのセル値を取得できます。
方法 1: 別のシートからセルの値を取得する
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
この特定のマクロはSheet2のセルA2から値を取得し、それを現在アクティブなセルに返します。
方法2: セル値の操作結果を別シートから取得する
別のシートのセルに対して操作を実行し、現在アクティブなセルに操作の結果を返すこともできます。
たとえば、次の構文を使用してSheet2の範囲B2:B10の値を追加し、現在アクティブなセルの合計を返すことができます。
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" B2:B10 "))
End Sub
次の例は、各メソッドを実際に使用する方法を示しています。
例 1: 別のシートからセルの値を取得する
さまざまなバスケットボール選手に関する情報が含まれるSheet2という次のシートがあるとします。
Sheet1のセルA2が現在アクティブ セルとして選択されているとします。
次のマクロを作成して、 Sheet2のセルA2の値を取得し、それを現在アクティブなセルに返すことができます。
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
このマクロを実行すると、 Sheet1のセルA2の値が “Mavs” に設定され、 Sheet2のセルA2の値と一致することがわかります。
例2: 別シートからセル値の操作結果を取得する
もう一度、さまざまなバスケットボール選手に関する情報を含むSheet2という次のシートがあると仮定します。
次のマクロを使用してSheet2のドット列の値を合計し、その結果を現在アクティブなセル ( Sheet1のセルA2です) に返すことができます。
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" A2 "))
End Sub
このマクロを実行すると、 Sheet2の範囲A2:A10 の値の合計がSheet1のセルA2に表示されることがわかります。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。
VBA: 別のシートのセルの値を設定する方法
VBA: アクティブセル内の範囲を選択する方法
VBA: セル値に基づいて行を削除する方法