【VBA】値だけ貼り付けテンプレート

VBA

Excel VBAを使っていると、「値だけ貼り付けたい」というシーンに出くわすことがよくあります。今回は、値だけ貼り付ける簡単なVBAコードをご紹介します。このコードは、セルの値をコピーし、貼り付け先に値のみを貼り付けた後、コピーモードを解除するというものです。

以下にテンプレートコードを示します。

'コピーして値だけ貼り付け、コピーモード解除
Cells().Copy
Cells().PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

コードの解説

  1. Cells().Copy: この行で、シート全体のセルをコピーしています。ここで Cells() を使っているため、シート全体が選択されますが、特定の範囲をコピーしたい場合は、例えば Range("A1:D10").Copy のように変更することができます。
  2. Cells().PasteSpecial Paste:=xlPasteValues: ここで、コピーしたセルの内容を「値だけ」にして貼り付けています。xlPasteValues は定数で、「値のみを貼り付ける」ことを指します。
  3. Application.CutCopyMode = False: 最後にコピーモードを解除します。これにより、クリップボードの内容がクリアされ、ユーザーに「コピー中」の表示が残らないようにします。

使用例

例えば、特定の範囲の値を他の範囲に値だけ貼り付けたい場合、次のように書き換えます。

Range("A1:B10").Copy
Range("C1:D10").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

このコードでは、A1:B10 の範囲をコピーし、C1:D10 に値だけを貼り付けています。

まとめ

値だけを貼り付ける操作は、データの加工や整理をする上で非常に便利です。今回紹介したVBAコードを使えば、手作業で行っていた作業を自動化し、効率化することができます。是非、試してみてください!

コメント

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