セルのペースト Range.PasteSpecialメソッド



(range).PasteSpecial(Paste, Operation, SkipBlanks, Transpose)

形式を指定して貼り付けるメソッドです。
機能はExcel「の形式を選択して貼り付け」(ショートカット:Alt+E+S)と同じです。
引数は全て省略可能で省略するとそのまま全て貼り付けます。



名前 説明 備考
Paste 形式の指定 XlPasteType 既定値:
xlPasteAll
Operation 操作の指定 XlPasteSpecialOperation 既定値:
xlPasteSpecialOperationNone
SkipBlanks 空白セルを
無視するかどうか
True or
False
既定値:
False
Transpose 行と列の入れ替え
するかどうか
True or
False
既定値:
False
引数一覧
形式の指定をしない場合は"Copy Destination:="を使用した方が
処理は早くなります
セルコピー[Range.Copy] メソッド



例:A1:A4セルの値のみC1:C4に貼り付け

Sub SamplePaste1()
    'アクティブなシートのセルA1:A4を選択
    Range("A1:A4").Select
    '選択したセルをコピー
    Selection.Copy
    'アクティブなシートのセルC1:c4を選択
    Range("C1:C4").Select
    '選択した部分に値のみ貼り付ける
    '(xlPasteValues:値のみ)
    Selection.PasteSpecial xlPasteValues

    'コピー状態の解除
    Application.CutCopyMode = False

End Sub

(省略形)
Sub SamplePaste2()
    'アクティブなシートのセルA1:A4をコピー
    Range("A1:A4").Copy
    'アクティブなシートのセルC1を起点に値のみ貼り付け
    Range("C1").PasteSpecial xlPasteValues

    'コピー状態の解除
    Application.CutCopyMode = False

End Sub

※Application.CutCopyMode = Falseは
クリップボードにコピーしてある状態をなくす処理です。


参照
セルのコピー(Copy)