Categories: VBA基礎

EXCEL VBA セル内容の移動 Cut(セル内容の移動・別のワークシートに移動・カット&ペースト・貼り付け)

EXCEL VBA セル内容の移動 Cut(セル内容の移動・別のワークシートに移動・カット&ペースト・貼り付け)

 

●はじめに
セルに入力した文字や表などを別のセルに移動させる場合や別のシートに移動させる方法をCutメゾットを使った方法で説明します。Cutメゾットを使うメリットは、移動先を指定した場合になどに簡単に移動させる事が出来ます。それでは、Cutメゾットを使ったセル内容の移動・別のワークシートに移動する方法などの設定方法を順番に説明いたします。

 

●書式の説明(Cut Range)
Range(“A1”).Cut Range(“A2”)    ※A1:貼り付け元のセルからA2貼り付け先のセルへ移動

Range(“A1”).Cut                        ※A1のセルの内容をクリップボードに格納される

 

●プログラム説明(Cut Range)サンプル①
下記のプログラムは、指定したセル(範囲指定)を別のセルに張り付けるプログラムです。詳細内容につきましては、下記のプログラムを参照してください。

 

Sub Cut01()

   Range("B4:E10").Cut Range("B15") 'B4~E10の指定セルをB15へカット&ペースト

End Sub

 

●実行結果 ※B4~E10のセルの内容をB15へカット&ペースト(移動)されました。
(クリックで拡大)

 

他のワークシートにセル内容を移動(コピー)

 

 ●プログラム説明(Cut Range:ワークシート間の移動)サンプル①
次に、ワークシート間での指定セル内容の移動方法を説明いたします。詳細内容につきましては、下記のプログラムを参照してください。

 

Sub Cut02()

   Worksheets("Sheet1").Range("B3:D7").Cut Worksheets("Sheet2").Range("B3") 'ワークシート1:B3~D7セル内容をワークシート2:B3へカット&ペースト
    
   Worksheets("Sheet2").Range("B:D").Columns.AutoFit  'ワークシート2のB~D列の幅を自動調節 ※この列幅の自動調整を行わないと移動したときに、B列からはみ出るます。

End Sub

 

●実結果 ※ワークシート1:B3~D7のセル内容をワークシート2:B3~D7に移動されました。(クリックして拡大)

 

他のワークシートにセル内容を移動(コピー)②

 

●プログラム説明
次のプログラムは、「他のワークシートセル内容を移動②」の応用になります。処理内容は、ワークシート間の切り取り⇒貼り付けになります。切り取り元と貼り付け先を指定する事で、プログラムが見やすくなります。

 

Sub Cut03()

    Dim WS01, WS02

    Set WS01 = Worksheets("Sheet1").Range("A1:C11") '切り取り元のワークシート1:A1~C11をセット①する。
    Set WS02 = Worksheets("Sheet2")   '貼り付け先(移動先)をワークシート2をセット②する。

    WS01.Cut WS02.Range("A1") '上記セットした。セット①切り取り⇒セット②A1へ張り付ける。

    WS02.Range("A:C").Columns.AutoFit 'ワークシート2のB~D列の幅を自動調節
    
End Sub

 

●実行後 ※ワークシート1:A1~C11のセル内容がワークシート2:A1に張り付けて完了しました。(クリックして拡大)

 

最後まで、ご覧いただきまして誠に有難うございました。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。

 

AKIRA