関数・メソッド

セルを切り取る【Cutメソッド】【ExcelVBA】

構文

Object.Cut(Destination)

Destination・・・貼付先のセルを指定します。【省略可能】

指定したオブジェクト(Rangeでのセル・セル範囲)を切り取りします。

Cutメソッドのコードサンプル

Public Sub test()

    '■特定セルを切り取る
    Range("A1").Cut
    Cells(1, 1).Cut

    '■セル範囲を切り取る
    Range("A1:A5").Cut
    
    '■B1に貼り付ける
    Paste Destination:=Range("B1")
        
        
    '■切り取ったセルを別セルに貼り付ける。
    Range("A1").Cut Destination:=Range("B1")

    '■切り取ったセルを別セルに貼り付ける。
    Range("A1:A5").Cut Destination:=Range("B1")     '"B1:B5"に反映
    Range("A1:A5").Cut Destination:=Range("B1:B5")  '"B1:B5"に反映
    
    '■少しは間違っていても自動的に補正してくれる
    Range("A1:A5").Cut Destination:=Range("B1:B4") '"B1:B5"に反映
    Range("A1:A5").Cut Destination:=Range("B1:B6") '"B1:B5"に反映
    Range("A1:A5").Cut Destination:=Range("B1:C2") '"B1:B5"に反映

End Sub

注意点

  • Cutメソッドを使用した場合は、PasteSpecialメソッドは使用できません。(エラーが発生します)
    ※手動でセルをコピー後、右クリック→形式を選択して貼り付けがグレーアウトしているのと同様です。
  • PasteSpecialメソッドを使用する場合はセルを切り取らず、コピーしてください。
  • Cutメソッドを使用した場合は、貼付時、Pasteメソッドを使用します。

関連記事

セルに値を入力する【Valueプロパティ】【ExcelVBA】
【VBA一覧】XlPasteType列挙 定数一覧
クリップボードの中身を貼り付ける【Pasteメソッド】※PasteSpecialがおすすめ
形式を選択して貼り付ける【PasteSpecialメソッド】

コメント

タイトルとURLをコピーしました