Page tree

Versions Compared

Key

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

...

Excerpt

Copies an area of cells 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

the CopyPasteProperties

object

 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.

...

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("myfile.xlsx"));

Worksheet sourceWs = sourceWb[0];

//--- Create the destination workbook and get the worksheet

//--- into which we will paste cells.

Workbook destWb = xla.Create(ExcelApplication.FileFormat.Xlsx);

Worksheet destWs = destWb[0];

//--- Define the area of cells to copy.

Area srcArea = sourceWs.CreateArea("A1:F20");

//--- Create the CopyPasteProperties object and define which settings will be copied.

CopyPasteProperties copyPasteProps =

sourceWb.CreateCopyPasteProperties(CopyPasteProperties.CopyPasteType.ValuesAndFormatting);

//--- 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)