LIVERVA

LIVERVA

生活を豊かに、自由に、便利に

【ExcelVBA】セルのコピー・ペースト

基本

同じシート内のセルのコピペ(Range)

Range("A1").Copy Range("B1")

同じシート内のセルのコピペ(Cells)

Cells(1, 1).Copy Cells(1, 2)

A1~D10の範囲のデータをF1を起点にコピペ(Range)

Range("A1:D10").Copy Range("F1")

A1~D10の範囲のデータをF1を起点にコピペ(Cells)

Range(Cells(1, 1), Cells(10, 4)).Copy Cells(1, 5)

別のシートへのコピペ

sheets("Sh1").Range("A1").Copy sheets("Sh2")Range("B1")

別のブックへのコピペ

Workbooks("Wb1").Sheets("Sh1").Range("A1").Copy _
Workbooks("Wb2").Sheets("Sh2").Range("B1")

※末尾の「 _ 」は、複数行を1つのコードとして実行させるもの

最下行を取得して貼り付け

Range("A1:A"& Cells(Rows.Count, 1).End(xlUp).Row ).Copy Range("B1")

最下行を取得して貼り付け(C列Ver)

Range("C1:C"& Cells(Rows.Count, 3).End(xlUp).Row ).Copy Range("B1")

形式を選択して貼り付け

数値として貼り付け

Range("A1").Copy 
Range("F1").pastespecial paste:=xlpasteValues

行と列を入れ替えて貼り付け(タテ→ヨコにする)

Range("A1:A10").Copy
Range("B1").PasteSpecial Transpose:=True

A列の値をB列に加算する

Range("A1:A10").Copy
Range("B1:B10").PasteSpecial Operation:=xlAdd

(引き算=xlSubtract、掛け算=xlMultiply、割り算=xlDivide)

変数を使う

シートを変数にセットしてコピペ

Dim ws as worksheet
set ws1 = Workbooks("Wb1").Sheets("Sh1")
set ws2 = Workbooks("Wb2").Sheets("Sh2")

ws1.Range("A1").Copy ws2.Range("A1")

変数で最下行を取得して貼り付け

Dim EndRow as Long
EndRow = Cells(Rows.Count, 1).End(xlUp).Row

Range("A1:A"& EndRow ).Copy Range("B1")

変数で右端のセルを取得して貼り付け

Dim EndCol as Long
EndCol = Cells(1, Columns.Count).End(xlToLeft).Column

Range(Cells(1, 1), Cells(1, EndCol)).Copy Range("A2")
HOME  /  プライバシーポリシー・免責事項  /  お問い合わせ