OfficeType

VBA~形式を選択して貼り付けよう~Excel

簡単な例

下の画像はセルB1とセルB2の合計をセルB3に数式を入力して表示しています。

image-01

値だけを貼り付けたい時はxlPasteValuesを使います。下のコードをを実行するとセルB4に計算結果の3だけが貼り付けられます。

Sub test1()
Range("B3").Copy
Range("B4").PasteSpecial Paste:=xlPasteValues
End Sub

image-02

書式だけを貼り付けたい時はxlPasteFormatsを使います。下のコードをを実行するとセルB5に書式だけが貼り付けられるので黄色で塗りつぶされます。

Sub test2()
Range("B3").Copy
Range("B5").PasteSpecial Paste:=xlPasteFormats
End Sub

image-03

数式をコピーしたい時はxlPasteFormulasを使います。下のコードをを実行するとセルB6に数式が貼り付けられ計算結果の3が表示されます。数式バーには数式が表示されます。

Sub test3()
Range("B3").Copy
Range("B6").PasteSpecial Paste:=xlPasteFormulas
End Sub

image-04

貼り付け種類一覧

名前意味
xlPasteAllすべて貼り付け
xlPasteAllExceptBorders輪郭以外すべて貼り付け
xlPasteAllMergingConditionalFormatsすべて貼り付け、条件付き書式をマージ
xlPasteAllUsingSourceThemeソーステーマを使用してすべてを貼り付け
xlPasteColumnWidthsコピーした列の幅を貼り付け
xlPasteCommentsコメントを貼り付け
xlPasteFormatsコピーしたソースの形式を貼り付け
xlPasteFormulas数式を貼り付け
xlPasteFormulasAndNumberFormats数式と数値の書式を貼り付け
xlPasteValidation入力規則を貼り付け
xlPasteValues値を貼り付け
xlPasteValuesAndNumberFormats値と数値の書式を貼り付け