VBA 複数の行を選択して操作を行う方法
VBA
で複数の行を選択して、コピーや削除などの操作を行う方法を紹介します。
1行の選択
わかりやすくするために、まずは1行のみ選択する方法を確認します。
以下の例では1行目を選択しています。
複数行の選択
複数行の場合は「範囲指定」ということになるため、Range
で指定します。
以下の例では1行目から3行目を選択しています。
Range(Rows(1), Rows(3)).Select
行のコピー
上記のSelect
の代わりにCopy
を実行すれば選択行をコピーできます。
Rows(1).Copy
Range(Rows(1), Rows(3)).Copy
行の削除
上記のSelect
の代わりにDelete
を実行すれば選択行を削除できます。
Rows(1).Delete
Range(Rows(1), Rows(3)).Delete
シートを指定する
上記の例ではシート名を指定していないため、現在のアクティブシートのセルが対象になります。
シート名を明示的に指定するには以下のようにします。
(シートの取得方法はVBA シート名でシートオブジェクトを取得する方法で紹介しています。)
Dim ws As Excel.Worksheet
Set ws = Worksheets("sheet1")
ws.Rows(1).Copy
ws.Rows(1).Delete
ws.Range(ws.Rows(1), ws.Rows(3)).Copy
ws.Range(ws.Rows(1), ws.Rows(3)).Delete
- VBA システム日付と時刻をフォーマットして表示する
VBAでシステム日付と時刻をフォーマットして表示する方法を紹介します。以下の例では、例えばシステム日付が2019年01月23日4時56分01秒の場合は2019/01/23 04:56:01が設定されま...
- VBA シート名でシートオブジェクトを取得する方法
VBAでシート名でシートオブジェクトを取得する方法を紹介します。以下の例ではsheet1という名称のシートをwsという変数に設定しています。取得したシートをアクティブシートに設定するには、取得したシー...
- VBA シートをコピーして複製する方法
VBAでシートをコピーして複製する方法を紹介します。まずはコピーしたいシートを取得します。(シートの取得方法はVBA シート名でシートオブジェクトを取得する方法で紹介しています。)以下のコマンドで、シ...
- VBA 指定した範囲のセルを結合・結合解除する方法
VBAで指定した範囲のセルを結合または結合解除する方法を紹介します。VBA 指定した範囲に配列の値をセットする方法で紹介した方法と同じように、Range(始点のセル, 終点のセル)の形式で範囲を指定し...
- VBA 指定した範囲に配列の値をセットする方法
VBAで指定した範囲に配列の値をセットする方法を紹介します。Range(始点のセル, 終点のセル)の形式で範囲を指定します。範囲内のセルの数を配列の要素数と合わせています。また、配列は1次配列のため、...
- VBA 書式のみをコピーして貼り付ける方法
VBAで書式のみをコピーして貼り付ける方法を紹介します。まずは指定した範囲に対してCopyを実行します。コピーの手順はVBA 指定した範囲をコピーして別の場所に貼り付ける方法で紹介した方法と同じです。...
- VBA 指定した範囲をコピーして別の場所に貼り付ける方法
VBAで指定した範囲をコピーして別の場所に貼り付ける方法を紹介します。まずは指定した範囲に対してCopyを実行します。VBA 指定した範囲のセルを結合・結合解除する方法で紹介した方法と同じように、Ra...
- VBA セルの内容に合わせて列幅を設定する方法
VBAでセルの内容に合わせて列幅を自動で設定する方法を紹介します。以下のように、自動調整したい列に対してAutoFitを実行します。自動で列幅を設定すれば、セルの内容が途中で折り返されたり切れたりとい...
- VBA セルに値を設定する方法
VBAでセルに値を設定する方法を紹介します。(値ではなく数式を設定する方法VBA セルに数式を設定する方法で紹介しています)以下の例では、アクティブシートのセルC1(1行目のC列目(3列目))にsam...
- VBA セルに数式を設定する方法
VBAでセルに数式を設定する方法を紹介します。(数式ではなく値を設定する方法VBA セルに値を設定する方法で紹介しています)以下の例では、アクティブシートのセルC1(1行目のC列目(3列目))にセルA...