« セルの罫線の設定 | トップページ | 重複を削除 »

2020年6月16日 (火)

形式を選択して貼り付け

形式を選択して貼り付けについて
VBAで実行する方法を見ていきます。



ショートカットキーCtrl+C, Ctrl+Vでのコピぺは
数式,書式,フォーマットなどすべてがコピペされます。

値のみコピーしたい場合,
書式のみコピーしたい場合もあります。
そのような場合,
[形式を選択して貼り付け]をします。

[形式を選択して貼り付け]をするには
範囲を選択して右クリック-[形式を選択して貼り付け]をクリックします。
次のウィンドウが表示されます。
Vba20200616a


目的の形式を選択して[OK]をクリックします。



VBAで[形式を選択して貼り付け]をする方法を見ていきます。

貼り付けの前にコピーをします。
Copyメソッドで範囲をコピーしたり,手動でコピーをします。
コピーしたデータはクリップボードに貼り付けられます。

形式を選択して貼り付けは
PasteSpecialメソッドを使用します。
Paste引数に貼り付ける形式を指定します。
次の表に
Paste引数に指定する定数と貼り付け形式を表示します。

定数
貼り付け形式
xlPasteAll
すべて
xlPasteFormulas
数式
xlPasteValues
xlPasteFormats
書式
xlPasteComments
コメント
xlPasteValidation
入力規則
xlPasteAllUsingSourceTheme
コピー元のテーマを使用してすべて貼り付け
xlPasteAllExceptBorders
罫線を除くすべて
xlPasteColumnWidths
列幅
xlPasteFormulasAndNumberFormats
数式と数値の書式
xlPasteValuesAndNumberFormats
値と数値の書式
xlPasteAllMergingConditionalFormats
すべての結合されている条件付き書式

次のコードは
VBAでコピーして,値のみペーストします。

値のみペーストするコード:

Sub macro20200616a()
'形式を選択して貼り付け
'貼り付け:値
   
    'コピー
    Range("A1").Copy
   
    '形式を選択して貼り付け
    Range("B1").PasteSpecial _
        Paste:=xlPasteValues
       
    'コピーモード解除
    Application.CutCopyMode = False
   
End Sub

次のコードは
ショートカットキーCtrl+Cでクリップボードに貼り付けたデータを
現在選択しているセルに
書式のみペーストします。

書式のみペーストするコード:

Sub macro20200616b()
'形式を選択して貼り付け
'貼り付け:書式

    '形式を選択して貼り付け
    Selection.PasteSpecial _
        Paste:=xlPasteFormats
   
    'コピーモード解除
    Application.CutCopyMode = False
   
End Sub

使用Ver:Win10, Excel For Office365

|

« セルの罫線の設定 | トップページ | 重複を削除 »

コメント

この記事へのコメントは終了しました。