将剪贴板上 Microsoft.Office.Interop.Excel.Range 对象的内容粘贴到 NamedRange 控件中。
命名空间:  Microsoft.Office.Tools.Excel
程序集:  Microsoft.Office.Tools.Excel(在 Microsoft.Office.Tools.Excel.dll 中)
语法
声明
Function PasteSpecial ( _
    Paste As XlPasteType, _
    Operation As XlPasteSpecialOperation, _
    SkipBlanks As Object, _
    Transpose As Object _
) As Object
Object PasteSpecial(
    XlPasteType Paste,
    XlPasteSpecialOperation Operation,
    Object SkipBlanks,
    Object Transpose
)
参数
- Paste
 类型:Microsoft.Office.Interop.Excel.XlPasteType
 该范围中要粘贴的部分。
 可以是下列 XlPasteType 值之一:
 xlPasteAll
 xlPasteAllExceptBorders
 xlPasteColumnWidths
 xlPasteComments
 xlPasteFormats
 xlPasteFormulas
 xlPasteFormulasAndNumberFormats
 xlPasteValidation
 xlPasteValues
 xlPasteValuesAndNumberFormats
- Operation
 类型:Microsoft.Office.Interop.Excel.XlPasteSpecialOperation
 粘贴操作。
 可以是下列 XlPasteSpecialOperation 值之一:
 xlPasteSpecialOperationAdd
 xlPasteSpecialOperationDivide
 xlPasteSpecialOperationMultiply
 xlPasteSpecialOperationNone
 xlPasteSpecialOperationSubtract
- SkipBlanks
 类型:System.Object
 如果不将剪贴板上该范围中的空单元格粘贴到目标范围,则为 true。默认值为 false。
- Transpose
 类型:System.Object
 如果在粘贴该范围时对行和列进行转置,则为 true。默认值为 false。
返回值
备注
可选参数
有关可选参数的信息,请参见Office 解决方案中的可选参数。
示例
下面的代码示例使用 Copy 方法将名为 NamedRange1 的 NamedRange 控件的内容复制到剪贴板,然后使用 PasteSpecial 方法将这些内容粘贴到名为 NamedRange2 的 NamedRange 控件中。 将 Operation 参数设置为 xlPasteSpecialOperationAdd,以便将 NamedRange1 中每个单元格的内容添加到 NamedRange2 中相应的单元格。
此示例针对的是文档级自定义项。
    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
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(missing);
    namedRange2.PasteSpecial(Excel.XlPasteType.xlPasteAll,
        Excel.XlPasteSpecialOperation.xlPasteSpecialOperationAdd,
        false,
        false);
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。