11/25/2023

Excel。VBA。コピーはコピーでも値のコピーをするにはどうしたらいいの。【copy value】

Excel。VBA。コピーはコピーでも値のコピーをするにはどうしたらいいの。

<VBA:PasteSpecialメソッド>

大きな帳票やデータなど、罫線をはじめとした、書式が設定されている場合、その書式を除いた「値のみ」でコピーしたいとします。


範囲選択するなど、操作自体は簡単でも、面倒なので、Excel VBAで処理したい場合、どのようにしたらいいのでしょうか。


次のように、プログラム文をつくってみました。

Sub 値のみコピー()

    Range("b2").CurrentRegion.Copy

    Range("b8").PasteSpecial xlPasteValues

End Sub


では、実行してみましょう。


B8を起点として、B2:D5の表が、値のみでコピー貼り付けできました。


プログラム文を確認しておきましょう。

Range("b2").CurrentRegion.Copy

B2を起点として、連続する範囲(CurrentRegion)をCopyします。


Range("b8").PasteSpecial xlPasteValues

B8を起点として、PasteSpecial xlPasteValues(値のみ)で貼り付けます。


PasteSpecialメソッドで、色々な形式で貼り付けることができます。