Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Description

Excerpt

Copies an area of cells from another Worksheet to cells in this worksheet.Worksheet from a worksheet in either the same workbook or another workbook.


You may specify the types of data copied (cell value, formulas, comments, formatting, etc.) using the CopyPasteProperties object.
The CopyPaste method supports copying column width, comments, formulas, merged cells, row height, values, and cell and number formatting.The CopyPaste method does not currently support copying anything not listed above, including charts, images, or autofilters.

Signature
C#
C#
 
 public Area CopyPaste(int firstRow, int firstCol, Area sourceArea, CopyPasteProperties properties) 
Signature
vb.net
vb.net
 
Public Function CopyPaste(ByVal firstRow As Integer, ByVal firstCol As Integer, ByVal sourceArea As Area, ByVal properties As CopyPasteProperties) As Area 
Parameters
Param
firstRow
firstRow

The zero-based index of the first row in destination area.

...

Returns

An Area object representing the set of cells populated with the copied values.

Remarks
  • The copied data will overwrite the contents of the cells in this worksheet.
You may specify the types of data copied (cell value, formulas, comments, formatting, etc.) using the CopyPasteProperties object
  • The CopyPaste method does not copy conditional formatting.
  • When formulas are copied, references to ranges are updated to refer to the new sheet.
Example
Code Block
csharp
csharp
titleC#

          //--- Open the workbook and worksheet from which we will copy cells. 
ExcelApplication xla = new ExcelApplication(); 
   Workbook sourceWb = xla.Open(Page.MapPath("MyDataSourcemyfile.xlsxlsx")); 
         Worksheet sourceWs = sourceWb[0]; 
          //--- Create the destination workbook and and get the worksheet 
         //--- into which we will paste cells. 
         Workbbok Workbook destWb = xla.Create("MyNewWorkbook"ExcelApplication.FileFormat.Xlsx); 
         Worksheet destWs = destWb[0]; 
          //--- Define the area of cells to copy. 
         Area srcArea = sourceWs.CreateArea("A1:F20"); 
          //--- CopyCreate cellthe values,CopyPasteProperties formulasobject and celldefine andwhich numbersettings formatting.will be copied. 
       CopyPasteProperties copyPasteProps = 
              sourceWb.CreateCopyPasteProperties(
               CopyPasteProperties.CopyPasteType.ValueFormulasAndFormattingValuesAndFormatting); 
          //--- Paste the data onto the destination worksheet. 
         destWs.CopyPaste(0, 0, srcArea, copyPasteProps); 


     
Code Block
vb.net
vb.net
titlevb.net
 
 
        '--- Open the workbook and worksheet from which we will copy cells. 
         Dim sourceWb As Workbook = xla.Open("MyDataSource.xls") 
         Dim sourceWs As Worksheet = sourceWb(0) 

         '--- Create the workbook and and get the worksheet 
         '--- into which we will paste cells. 
         Dim destWb As Workbook = xla.Create("MyNewWorkbook") 
         Dim destWs As Worksheet = destWb(0) 

         '--- Define the area of cells to copy. 
         Dim srcArea As Area = sourceWs.CreateArea("A1:F20") 

         '--- Copy cell values, formulas and cell and number formatting. 
         Dim copyPasteProps As CopyPasteProperties = _ 
              sourceWb.CreateCopyPasteProperties( _ 
              CopyPasteProperties.CopyPasteType.ValueFormulasAndFormatting) 

         '--- Paste the data onto the destination worksheet. 
         destWs.CopyPaste(0, 0, srcArea, copyPasteProps)