Copia degli intervalli di Excel

Introduzione

In Excel, è possibile selezionare un intervallo, copiare l’intervallo, quindi incollarlo con opzioni specifiche nello stesso foglio di lavoro, in altri fogli di lavoro o in altri file.

Copiare intervalli utilizzando Aspose.Cells

Aspose.Cells fornisce alcuni metodi Range.Copy per copiare il range. E Range.CopyStyle copia solo lo stile del range; Range.CopyData copia solo il valore del range.

Copia Intervallo

Creazione di due intervalli: l’intervallo di origine, l’intervallo di destinazione, quindi copiare l’intervallo di origine nell’intervallo di destinazione con il metodo Range.Copy.

Vedere il codice seguente:

// Instantiate a new Workbook.
Workbook workbook = new Workbook();
// Get all the worksheets in the book.
WorksheetCollection worksheets = workbook.Worksheets;
// Get the first worksheet in the worksheets collection.
Worksheet worksheet = workbook.Worksheets[0];
// Create a range of cells.
Range sourceRange = worksheet.Cells.CreateRange("A1", "A2");
// Input some data with some formattings into
// A few cells in the range.
sourceRange[0, 0].PutValue("Test");
sourceRange[1, 0].PutValue("123");
// Create target range of cells.
Range targetRange = worksheet.Cells.CreateRange("B1", "B2");
// Copy source range to target range in the same workhseet
targetRange.Copy(sourceRange);
// Create target range of cells.
workbook.Worksheets.Add();
worksheet = workbook.Worksheets[1];
targetRange = worksheet.Cells.CreateRange("A1", "A2");
// Copy source range to target range in another workhseet
targetRange.Copy(sourceRange);
//Copy to another workbook
Workbook anotherWorkbook = new Workbook();
worksheet = workbook.Worksheets[0];
targetRange = worksheet.Cells.CreateRange("A1", "A2");
// Copy source range to target range in another workbook
targetRange.Copy(sourceRange);
view raw Copy-Range.cs hosted with ❤ by GitHub

Incolla l’intervallo con opzioni

Aspose.Cells supporta l’incollaggio del intervallo con un tipo specifico.

// Instantiate a new Workbook.
Workbook workbook = new Workbook();
// Get all the worksheets in the book.
WorksheetCollection worksheets = workbook.Worksheets;
// Get the first worksheet in the worksheets collection.
Worksheet worksheet = workbook.Worksheets[0];
// Create a range of cells.
Range sourceRange = worksheet.Cells.CreateRange("A1", "A2");
// Input some data with some formattings into
// A few cells in the range.
sourceRange[0, 0].PutValue("Test");
sourceRange[1, 0].PutValue("123");
// Create target range of cells.
Range targetRange = worksheet.Cells.CreateRange("B1", "B2");
// Init paste options.
PasteOptions options = new PasteOptions();
// Set paste type.
options.PasteType = PasteType.ValuesAndFormats;
options.SkipBlanks = true;
// Copy source range to target range
targetRange.Copy(sourceRange, options);
view raw Paste-Range.cs hosted with ❤ by GitHub

Copia solo i dati dell’intervallo

Puoi anche copiare i dati con il metodo Range.CopyData come nei seguenti codici:

// Instantiate a new Workbook.
Workbook workbook = new Workbook();
// Get all the worksheets in the book.
WorksheetCollection worksheets = workbook.Worksheets;
// Get the first worksheet in the worksheets collection.
Worksheet worksheet = workbook.Worksheets[0];
// Create a range of cells.
Range sourceRange = worksheet.Cells.CreateRange("A1", "A2");
// Input some data with some formattings into
// A few cells in the range.
sourceRange[0, 0].PutValue("Test");
sourceRange[1, 0].PutValue("123");
// Create target range of cells.
Range targetRange = worksheet.Cells.CreateRange("B1", "B2");
// Copy the data of source range to target range
targetRange.CopyData(sourceRange);

Argomenti avanzati