形式を選択して貼り付ける

サンプルソース

' セルをコピー
Range("A1:C3").Copy

' 形式(値のみ)を選択して貼り付け
Range("A5").PasteSpecial Paste:=xlPasteValues

' 貼り付けるデータに加算する
Range("A6").PasteSpecial Operation:=xlPasteFormulas

' 空白のセルを貼り付け対象にする
Range("A6").PasteSpecial SkipBlanks:=True

' 貼り付けるデータの行と列を入れ替える
Range("A6").PasteSpecial Transpose:=True

' 形式を選択、データ加算、空白セルを対象、行と列を入れ替えて貼り付け
Range("A5").PasteSpecial Paste:=xlPasteValues,Operation:=xlPasteFormulas,SkipBlanks:=True,Transpose:=True

解説

PasteSpecialで形式を選択して貼り付けます。

Pasteには貼り付ける形式を、Operationには貼り付けの操作を、SkipBlanksには空白のセルを貼り付けの有無を、Transposeにはデータの行と列を入れ替えの有無を指定します。

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

Operationの設定値
設定内容
xlPasteSpecialOperationAddデータを対象セルの値に加算
xlPasteSpecialOperationDivideデータを対象セルの値で除算
xlPasteSpecialOperationMultiplyデータを対象セルの値に乗算
xlPasteSpecialOperationNoneデータを計算しない
xlPasteSpecialOperationSubtractデータを対象セルの値で減算

SkipBlanksの設定値
設定内容
True空白のセルを貼り付けの対象にする
False空白のセルを貼り付けの対象にしない(既定値)

Transposeの設定値
設定内容
Trueデータの行と列を入れ替える
Falseデータの行と列を入れ替えない(既定値)



セルの操作

Copyright (C) ExcelVBA@Workshop All rights reserved.