Excel VBA xlPasteValuesはコピーしたセルの値だけを貼り付ける定数

 

Excel VBA xlPasteValuesは、コピーしたセルの値だけを貼り付ける定数です。数式や書式を含まない、値のみの貼り付けを行う際に使用します。具体的な使い方や、注意点やサンプルコードを紹介します。

 

📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!

👇実務で“そのまま使える”テンプレ付きで、コピペするだけ
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き

 

Excel VBA xlPasteValuesを利用

以下のようなシーンで利用されます。

・数式を含むセルの計算結果のみを貼り付けたい。

・フォーマットやリンクを含まない値だけを他のセルに転記したい。

・大量のデータを処理する際に、書式設定や数式を無視して、値だけをコピーする必要がある。

 

Excel VBA xlPasteValues|使い方とポイント

使い方

Range.PasteSpecialメソッドと共に xlPasteValues を使用します。まず、コピー元のセルをコピーし、次に貼り付け先で PasteSpecial メソッドを使用して値のみを貼り付けます。

 

ポイント

・コピー元セルの値のみを貼り付けるので、書式設定や数式は貼り付けられません。

・貼り付け先のセルには、元の書式がそのまま残ります。

 

Excel VBA xlPasteValuesのサンプルコード

Option Explicit

Sub PasteValuesExample()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1")

    ' コピー元のセル範囲を選択してコピー
    ws.Range("A1:B2").Copy

    ' 貼り付け先のセルを選択し、値のみを貼り付け
    ws.Range("D1").PasteSpecial Paste:=xlPasteValues

    ' クリップボードをクリア
    Application.CutCopyMode = False
End Sub

自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。

👉無料ExcelVBAベーシック選択問題138問

1.変数の宣言
・ws: Worksheet 型の変数。作業シートを保持します。

2.シートの指定
・Set ws = ThisWorkbook.Sheets("Sheet1"): Sheet1を操作シートとして設定します。

3.コピー元のセル範囲を選択してコピー
・ws.Range("A1:B2").Copy: A1からB2の範囲をコピーします。

4.貼り付け先のセルを選択し、値のみを貼り付け
・ws.Range("D1").PasteSpecial Paste:=xlPasteValues: D1セルを選択し、PasteSpecialメソッドを使用して値のみを貼り付けます。

5.クリップボードをクリア
・Application.CutCopyMode = False: クリップボードの内容をクリアします。

サンプルコードでは、xlPasteValuesを利用してセルの値だけを他のセルに貼り付ける方法を理解できます。

 

Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。

👉無料ExcelVBAベーシック選択問題138問