Vba: アクティブセル内の範囲を選択する方法


VBA で次のメソッドを使用すると、Excel で現在アクティブなセルからセル範囲を選択できます。

方法 1: アクティブ セルから下位範囲を選択する

 SubSelectActiveDown ()
Range(ActiveCell, ActiveCell.End(xlDown)).Select
End Sub

このマクロは、アクティブなセルから列内の最後に使用されたセルまでの範囲を選択します。

方法 2: アクティブ セルから範囲アップを選択する

 SubSelectActiveUp ()
Range(ActiveCell, ActiveCell.End(xlUp)).Select
End Sub

このマクロは、アクティブ セルから列内の最初に使用されたセルまでの範囲を選択します。

方法 3: アクティブ セルの右側の範囲を選択する

 SubSelectActiveRight ()
Range(ActiveCell, ActiveCell.End(xlToRight)).Select
End Sub

このマクロは、アクティブ セルから同じ行の右側にある最後に使用したセルまでの範囲を選択します。

方法 4: アクティブ セルの左側の範囲を選択する

 SubSelectActiveLeft ()
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
End Sub

このマクロは、アクティブ セルから、同じ行の左側にある最後に使用したセルまでの範囲を選択します。

次の例は、Excel の次のシートで各メソッドを使用する方法を示しています。

例 1: アクティブ セルから下位範囲を選択する

現在セルC3が選択されていると仮定します。

次のマクロを作成して、列内のアクティブ セルから最後に使用したセルまでの範囲を選択できます。

 SubSelectActiveDown ()
Range(ActiveCell, ActiveCell.End(xlDown)).Select
End Sub

このマクロを実行すると、次の範囲が自動的に選択されます。

VBAはアクティブセルの下の範囲を選択します

セルC3から列で使用されている最後のセルまでの範囲が選択されていることに注目してください。

例 2: アクティブ セルから上の範囲を選択します

現在セルC3が選択されていると仮定します。

次のマクロを作成して、アクティブ セルから列で使用される最初のセルまでの範囲を選択できます。

 SubSelectActiveUp ()
Range(ActiveCell, ActiveCell.End(xlUp)).Select
End Sub

このマクロを実行すると、次の範囲が自動的に選択されます。

VBA アクティブセルから範囲を選択

セルC3から列で使用されている最初のセルまでの範囲が選択されていることに注目してください。

例 3: アクティブ セルの右側の範囲を選択する

現在セルB2が選択されていると仮定します。

次のマクロを作成して、アクティブ セルから同じ行の右側にある最後に使用したセルまでの範囲を選択できます。

 SubSelectActiveRight ()
Range(ActiveCell, ActiveCell.End(xlToRight)).Select
End Sub

このマクロを実行すると、次の範囲が自動的に選択されます。

アクティブセルの右側のVBA選択範囲

セルB2から同じ行の右側にある最後に使用したセルまでの範囲が選択されていることに注目してください。

例4: アクティブセルの左側の範囲を選択

現在セルD6が選択されていると仮定します。

次のマクロを作成して、アクティブ セルから同じ行の左側にある最後に使用したセルまでの範囲を選択できます。

 SubSelectActiveLeft ()
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
End Sub

このマクロを実行すると、次の範囲が自動的に選択されます。

セルD6から同じ行の左側にある最後に使用したセルまでの範囲が選択されていることに注目してください。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA: 最後に使用された行を見つける方法
VBA: 最後に使用された列を見つける方法
VBA: 複数行を挿入する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です