VBA 行と列のコピー/貼り付け

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

masahiro yoshida

Last updated on 3月 16, 2022

このチュートリアルでは、VBAを使用して行または列全体をコピー(または切り取り)する方法について説明します。セルの範囲のコピーと貼り付けについては、別の記事で説明します。

まず、コピーした行や列を貼り付けたり、挿入したりする方法を紹介し、その違いについて説明します。  次に、コピーや切り取りを行う際に、行や列を参照するさまざまな方法をすべて紹介します。

行と列 − 貼り付けと挿入の比較

行や列を貼り付ける場合、2つの選択肢があります。  既存の行(または列)の上に貼り付ける方法と、新しい行(または列)を挿入する方法です。

その違いを見てみましょう。

vba copy and paste row

 

既存の行/列の上にコピー&ペーストする

これは、1行目をコピーし、既存の5行目にペーストします。

Range("1:1").Copy Range("5:5")

これは、C列をコピーし、E列にペーストします。

Range("C:C").Copy Range("E:E")

行/列をコピーして挿入する

上書きする代わりに、コピーした行や列を挿入し、既存の行や列をずらしてスペースを確保することもできます。

これは、1行目をコピーして5行目に挿入し、既存の行を下にずらします。

Range("1:1").Copy
Range("5:5").Insert

これは、C列をコピーしてE列に挿入し、既存の列を右にシフトします。

Range("C:C").Copy
Range("E:E").Insert

行全体をコピーする

以下では、1行目をコピーして5行目にペーストする方法をいくつかご紹介します。

Range("1:1").Copy Range("5:5")
Range("A1").EntireRow.Copy Range("A5")
Rows(1).Copy Rows(5)

行をカット&ペーストする

行をカット&ペーストするには、「コピー」の代わりに「カット」を使用するだけです。

Rows(1).Cut Rows(5)

複数行をコピーする

以下は、複数行を一度にコピーする例です。

Range("5:7").Copy Range("10:13")
Range("A5:A7").EntireRow.Copy Range("A10:A13")
Rows(5:7).Copy Rows(10:13)

列全体をコピーする

行全体のコピーと同様に、列全体をコピーすることができます。

Range("C:C").Copy Range("E:E")
Range("C1").EntireColumn.Copy Range("C1").EntireColumn
Columns(3).Copy Range(5)

列をカット&ペーストする

列をカット&ペーストするには、「コピー」の代わりに「カット」を使用するだけです。

Range("C:C").Cut Range("E:E")

複数の列をコピーする

以下は、複数の列を一度にコピーする例です。

Range("C:E").Copy Range("G:I")
Range("C1:E1").EntireColumn.Copy Range("G1:I1")
Columns(3:5).Copy Columns(7:9)

行や列を別のシートにコピーする

別のシートにコピーするには、単にシートオブジェクトを使用します。

Sheets("sheet1").Range("C:E").Copy Sheets("sheet2").Range("G:I")

行や列を別のシートに切り出す

行や列をカットして別のシートに貼り付ける場合も、まったく同じ手法が使えます。

Sheets("sheet1").Range("C:E").Cut Sheets("sheet2").Range("G:I")
vba-free-addin

VBA Code Examples Add-in

Easily access all of the code examples found on our site.

Simply navigate to the menu, click, and the code will be inserted directly into your module. .xlam add-in.

(No installation required!)

Free Download

Return to VBA Code Examples