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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

対象のセルが直接参照しているセル全てを取得(DirectPrecedents プロパティ)

DirectPrecedents プロパティ DirectPrecedents …

対象のセルを参照している全てのセルを取得(Dependents プロパティ)

Dependents プロパティ Dependents プロパティは、対象のセル …

ワイルドカードを使って検索(Find メソッド)

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

列名・列番号取得 使用例
列名を取得、列番号を取得(Address プロパティ,Column プロパティ)

列番号を取得する セル番地(「A1」や「B3」)や列名(「A」「B」「C」&#8 …

フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)

Characters プロパティ Characters プロパティは、文字範囲を …

並べ替え(Sort メソッド)

Sort メソッド 任意のセル範囲内で、並べ替えを行います。引数で、並べ替えの条 …

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

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

Goto メソッド
指定したセルへ移動(Goto メソッド)

指定したセルへ移動 指定したシートの指定したセルへジャンプするには、Goto メ …

使用中のセル範囲を取得(UsedRange プロパティ)

UsedRange プロパティ UsedRange プロパティは、指定したワーク …

セル内の編集を禁止する(EditDirectlyInCell プロパティ)

EditDirectlyInCell プロパティ エクセルでは、セルをダブルクリ …