ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

セルの特定の要素のみをペーストする(PasteSpecial メソッド)

      2015/08/26

PasteSpecial メソッド

PasteSpecial メソッドは、Copy メソッドでコピーされたワークシート上の任意のセル・セル範囲の内容の特定の要素のみ(「値のみ」「列幅のみ」「書式のみ」など)をペーストする時に使用します。


【書式】

Object.PasteSpecial ( [ paste, operation, skipblanks, transpose ] )


引数・戻り値

  • object  ・・・  対象となるRange オブジェクト
  • paste  ・・・  貼り付ける要素を XlPasteType 列挙型 の定数で指定します。(下表参照
  • operation  ・・・  計算を伴う貼り付けの場合の計算方法を XlPasteSpecialOperation の定数で指定します。(下表参照
  • skipblanks  ・・・  クリップボードに含まれる空白のセルを貼り付けの対象にしないようにするには、True を指定します。既定値は False です。
  • transpose  ・・・  行と列を入れ替えて貼り付けるには、True を指定します。既定値は False です。


引数 paste(XlPasteType 列挙型の定数)

定数 内容
xlPasteValues -4163 値のみ
xlPasteComments -4144 コメントを貼り付けます。
xlPasteFormulas -4123 数式を貼り付け
xlPasteFormats -4122 コピーしたソースの形式を貼り付け
xlPasteAll -4104 すべてを貼り付け
xlPasteValidation 6 入力規則を貼り付け
xlPasteAllExceptBorders 7 輪郭以外のすべてを貼り付け
xlPasteColumnWidths 8 コピーした列の幅を貼り付け
xlPasteFormulasAndNumberFormats 11 数式と数値の書式を貼り付け
xlPasteValuesAndNumberFormats 12 値と数値の書式を貼り付け
xlPasteAllUsingSourceTheme 13 ソースのテーマを使用してすべてを貼り付け
xlPasteAllMergingConditionalFormats 14 すべてを貼り付け、条件付き書式をマージ


引数 operation(XlPasteSpecialOperationの定数)

定数 内容
xlPasteSpecialOperationNone -4142 計算は行われない
xlPasteSpecialOperationAdd 2 加算
xlPasteSpecialOperationSubtract 3 減算
xlPasteSpecialOperationMultiply 4 乗算
xlPasteSpecialOperationDivide 5 除算


引数 paste には1つの要素しか指定することができないので、複数の要素をコピーしたい場合は、その要素ごとに、PasteSpecial メソッドを実行します。
(例)列幅と書式をペースト
 Range(“A1”).copy
 Range(“B1”).PasteSpecial xlPasteColumnWidths
 Range(“B1”).PasteSpecial xlPasteFormats


書式が文字列であったり、先頭に「’」シングルコーテーションマークがついた数値が入力されているセルに対して、「空白セル」をコピーして、PasteSpecial メソッドで、引数 operation に、xlPasteSpecialOperationAdd を指定してその数値が入力されたセルにペーストすると、標準の書式に変更され、「’」シングルコーテーションマークも取り除かれます。


PasteSpecial メソッドの使用例

サンプルVBAソース


実行結果

サンプルVBA実行前

PasteSpecial メソッド01

サンプルVBA実行後

PasteSpecial メソッド02




 - セルの操作 , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

VBA で、ワークシート関数を使用(WorksheetFunction プロパティ)

VBA で、ワークシと関数を使用 VBA から、ワークシート関数を呼び出す場合、 …

オートフィルタ(矢印を非表示にする)AutoFilter メソッド

AutoFilter メソッド 【書式】 object.AutoFilter ( …

セル範囲を結合・結合を解除(Merge メソッド・UnMerge メソッド)

Merge メソッド・UnMerge メソッド セルを結合するには、指定したセル …

入力規則(Validation オブジェクト)

Validation オブジェクト セル範囲に入力できる値を制限するには 入力規 …

セル範囲内を検索(Find メソッド)

Find メソッド 指定したセル範囲内の特定の情報を含むセルを検索します。 【書 …

アクティブなセルを参照する(ActiveCell プロパティ)

ActiveCell プロパティ ActiveCell プロパティは、各ウィンド …

セル・セル範囲を切り取る(Cut メソッド)

Cut メソッド Cut メソッドは、指定したセル範囲を切り取り、引数に指定した …

入力規則(他セルや数式を利用して許容値を設定)Validation オブジェクト

他のセルや数式を利用して許容値を設定する 入力規則(その5) での設定を、マクロ …

ハイパーリンク(Hyperlinks オブジェクト)

Hyperlinks オブジェクト ワークシートまたはセル範囲のワークシートコレ …

任意の行または列を参照(Rows プロパティ,Columns プロパティ)

Rows プロパティ・Columns プロパティ Rows プロパティは、オブジ …