NamedRange.PasteSpecial Method

Definition

Pastes the contents of a Range object from the Clipboard into the NamedRange control.

public object PasteSpecial (Microsoft.Office.Interop.Excel.XlPasteType Paste = Microsoft.Office.Interop.Excel.XlPasteType.xlPasteAll, Microsoft.Office.Interop.Excel.XlPasteSpecialOperation Operation = Microsoft.Office.Interop.Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone, object SkipBlanks, object Transpose);
abstract member PasteSpecial : Microsoft.Office.Interop.Excel.XlPasteType * Microsoft.Office.Interop.Excel.XlPasteSpecialOperation * obj * obj -> obj
Public Function PasteSpecial (Optional Paste As XlPasteType = Microsoft.Office.Interop.Excel.XlPasteType.xlPasteAll, Optional Operation As XlPasteSpecialOperation = Microsoft.Office.Interop.Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone, Optional SkipBlanks As Object, Optional Transpose As Object) As Object

Parameters

SkipBlanks
Object

true to not have blank cells in the range on the Clipboard pasted into the destination range. The default value is false.

Transpose
Object

true to transpose rows and columns when the range is pasted. The default value is false.

Returns

Examples

The following code example uses the Copy method to copy the contents of a NamedRange control named NamedRange1 to the Clipboard, and then uses the PasteSpecial method to paste these contents into a NamedRange control named NamedRange2. The Operation parameter is set to xlPasteSpecialOperationAdd so that the content of each cell in NamedRange1 is added to the corresponding cell in NamedRange2.

This example is for a document-level customization.

private void CopyAndPasteSpecialRange()
{
    Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
        this.Controls.AddNamedRange(this.Range["A1", "A3"],
        "namedRange1");
    namedRange1.Value2 = 22;

    Microsoft.Office.Tools.Excel.NamedRange namedRange2 =
        this.Controls.AddNamedRange(this.Range["C1", "C3"],
        "namedRange2");
    namedRange2.Value2 = 5;

    // Copy the contents of namedRange1 to the clipboard, and then
    // paste the contents into namedRange2, adding each to
    // the value in namedRange2.
    namedRange1.Copy();
    namedRange2.PasteSpecial(Excel.XlPasteType.xlPasteAll,
        Excel.XlPasteSpecialOperation.xlPasteSpecialOperationAdd,
        false,
        false);
}
Private Sub CopyAndPasteSpecialRange()
    Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
        = Me.Controls.AddNamedRange(Me.Range("A1", "A3"), _
        "namedRange1")
    namedRange1.Value2 = 22

    Dim namedRange2 As Microsoft.Office.Tools.Excel.NamedRange _
        = Me.Controls.AddNamedRange(Me.Range("C1", "C3"), _
        "namedRange2")
    namedRange2.Value2 = 5

    ' Copy the contents of namedRange1 to the clipboard, and then
    ' paste the contents into namedRange2, adding each value to
    ' the value in namedRange2.
    namedRange1.Copy()
    namedRange2.PasteSpecial(Excel.XlPasteType.xlPasteAll, _
    Excel.XlPasteSpecialOperation.xlPasteSpecialOperationAdd, _
    False, False)
End Sub

Remarks

Optional Parameters

For information on optional parameters, see Optional Parameters in Office Solutions.

Applies to