本ページには広告が含まれています。
目次
指定された範囲にコピーされたRangeオブジェクトを貼り付けます。セルの内容をコピーするにはRange.Copy メソッドを使います。
- 構文
- Range.PasteSpecial( Paste, Operation, SkipBlanks, Transpose )
- 引数
- Paste (XlPasteType)省略可
- XlPasteAllやxlPasteValuesなど、貼り付ける範囲の部分を指定します。
- Operation (XlPasteSpecialOperation)省略可
- XlPasteSpecialOperationAddなどの貼り付け操作。
- SkipBlanks 省略可
- Trueを指定すると、クリップボードの範囲内の空白セルが貼り付け先の範囲に貼り付けられません。既定値はFalseです。「空白セルを無視する」。
- Transpose 省略可
- Trueを指定すると、行と列が貼り付けられます。既定値はFalseです。「行/列の入れ替え」。
- 戻り値
Range オブジェクトを返すメソッド・プロパティ
- Range オブジェクト
- セル、行、列、連続した1つ以上のセル範囲を表します。
- Application.ActiveCell プロパティ
- セルまたはセル範囲を表すRangeオブジェクトを返します。
- Application.Cells プロパティ
- 作業中のワークシートのすべてのセルを表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- セル、行、列、連続した1つ以上のセル範囲を表します。
- Application.Selection プロパティ
- Applicationオブジェクトのアクティブなワークシートで現在選択されているオブジェクトを返します。
- Range.PasteSpecial メソッド
- 指定した条件に一致する最初のセルを検索します。
- Range.PasteSpecial メソッド
- Findメソッドによって開始された検索を続行します。前回の検索条件に一致するセルを、下方向(行のときは左から右、列のときは上から下)に検索し、見つかったセル(Rangeオブジェクト)を返します。選択範囲やアクティブセルには影響はありません。
- Range.PasteSpecial メソッド
- 範囲内のセルから特定の条件に一致するRange オブジェクトを返します。条件は、セルの種類(数値、テキスト、エラーなど)やセルの状態(空白、定数、数式など)に基づいて指定することができます。
- Range.PasteSpecial メソッド
- 指定した範囲の列を表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- 現在の領域を表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- 対象セル範囲の領域における終端のRange オブジェクトへの参照を返します。
- Range.PasteSpecial メソッド
- 指定された範囲を含む1つまたは複数の列全体を表すRange オブジェクトを返します。読み取り専用です。
- Range.PasteSpecial メソッド
- 指定されたセル範囲を含む行全体を表すRange オブジェクトを返します。読み取り専用です。
- Range.PasteSpecial メソッド
- 指定したセル範囲のオフセット値で指定される範囲を表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- 指定された範囲からオフセットした範囲を表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- 指定された範囲のサイズを変更します。サイズが変更されたセル範囲を表すRange オブジェクトを返します。
- Range.PasteSpecial メソッド
- 指定した範囲の行を表すRange オブジェクトを返します。
- Worksheet.Range プロパティ
- セル、行、列、連続した1つ以上のセル範囲を表します。
定数一覧
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 | すべての結合されている条件付き書式 |
CONST xlPasteValues = -4163
CONST xlPasteComments = -4144
CONST xlPasteFormulas = -4123
CONST xlPasteFormats = -4122
CONST xlPasteAll = -4104
CONST xlPasteValidation = 6
CONST xlPasteAllExceptBorders = 7
CONST xlPasteColumnWidths = 8
CONST xlPasteFormulasAndNumberFormats = 11
CONST xlPasteValuesAndNumberFormats = 12
CONST xlPasteAllUsingSourceTheme = 13
CONST xlPasteAllMergingConditionalFormats = 14
XlPasteSpecialOperation 列挙
名前 | 値 | 説明 |
---|---|---|
xlPasteSpecialOperationNone | -4142 | なし |
xlPasteSpecialOperationAdd | 2 | 加算 |
xlPasteSpecialOperationSubtract | 3 | 減算 |
xlPasteSpecialOperationMultiply | 4 | 乗算 |
xlPasteSpecialOperationDivide | 5 | 除算 |
CONST xlPasteSpecialOperationNone = -4142
CONST xlPasteSpecialOperationAdd = 2
CONST xlPasteSpecialOperationSubtract = 3
CONST xlPasteSpecialOperationMultiply = 4
CONST xlPasteSpecialOperationDivide = 5
形式を選択して貼り付け
「すべて」貼り付け
セルA1をコピーし、形式は「すべて」でセルC1に貼り付けます。
CONST xlPasteAll = -4104
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteAll)
ENDWITH
「数式」のみ貼り付け
セルA1をコピーし、形式は「数式」でセルC1に貼り付けます。
CONST xlPasteFormulas = -4123
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteFormulas)
ENDWITH
「値」のみ貼り付け
セルA1をコピーし、形式は「値」でセルC1に貼り付けます。
CONST xlPasteValues = -4163
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteValues)
ENDWITH
「書式」のみ貼り付け
セルA1をコピーし、形式は「書式」でセルC1に貼り付けます。
CONST xlPasteFormats = -4122
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteFormats)
ENDWITH
「コメント」のみ貼り付け
セルA1をコピーし、形式は「コメント」でセルC1に貼り付けます。
CONST xlPasteComments = -4144
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteComments)
ENDWITH
「入力規則」のみ貼り付け
セルA1をコピーし、形式は「入力規則」でセルC1に貼り付けます。
CONST xlPasteValidation = 6
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteValidation)
ENDWITH
「コピー元のテーマを使用してすべてを貼り付け」で貼り付け
セルA1をコピーし、形式は「コピー元のテーマを使用してすべてを貼り付け」でセルC1に貼り付けます。
CONST xlPasteAllUsingSourceTheme = 13
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteAllUsingSourceTheme)
ENDWITH
「罫線を除くすべて」で貼り付け
セルA1をコピーし、形式は「罫線を除くすべて」でセルC1に貼り付けます。
CONST xlPasteAllExceptBorders = 7
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteAllExceptBorders)
ENDWITH
「列幅」のみ貼り付け
セルA1をコピーし、形式は「列幅」でセルC1に貼り付けます。
CONST xlPasteColumnWidths = 8
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteColumnWidths)
ENDWITH
「数式と数値の書式」で貼り付け
セルA1をコピーし、形式は「数式と数値の書式」でセルC1に貼り付けます。
CONST xlPasteFormulasAndNumberFormats = 11
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteFormulasAndNumberFormats)
ENDWITH
「値と数値の書式」で貼り付け
セルA1をコピーし、形式は「値と数値の書式」でセルC1に貼り付けます。
CONST xlPasteValuesAndNumberFormats = 12
WITH Excel
.Range("A1").Copy
.Range("C1").PasteSpecial(xlPasteValuesAndNumberFormats)
ENDWITH
参考文献
関連記事
- Range オブジェクト
- セル、行、列、連続した1つ以上のセル範囲を表します。
- Application.ActiveCell プロパティ (Excel)
- セルまたはセル範囲を表すRangeオブジェクトを返します。
- Application.Cells プロパティ (Excel)
- 作業中のワークシートのすべてのセルを表すRange オブジェクトを返します。
- Range.Activate メソッド (Excel)
- 1つのセルをアクティブにします。セルは現在の選択範囲内にある必要があります。セルの範囲を選択するには、Selectメソッドを使用します。
- Range.AutoFill メソッド (Excel)
- 指定された対象セル範囲内のセルに対してオートフィルを実行します。
- Range.AutoFilter メソッド (Excel)
- オートフィルターを使ってリストをフィルター処理します。
- Range.ClearHyperlinks メソッド (Excel)
- 指定された範囲からすべてのハイパーリンクを削除します。
- Range.Copy メソッド (Excel)
- 範囲を、指定の範囲またはクリップボードにコピーします。
- Range.DiscardChanges メソッド (Excel)
- 編集されたセル範囲内のすべての変更を破棄します。
- Range.NumberFormatLocal プロパティ (Excel)