Copiar solo datos de rango
Contents
[
Hide
]
A veces, necesita copiar datos de un rango de celdas a otro, copiando solo los datos, no el formato. Aspose.Cells ofrece esta característica proporcionando elRange.copyData método.
Copiar solo datos de rango
Este ejemplo muestra cómo:
- Crear un libro de trabajo.
- Agregue datos a las celdas en la primera hoja de trabajo.
- Crea un rango.
- Cree un objeto de estilo con atributos de formato especificados.
- Aplique el formato de estilo al rango.
- Cree otro rango de celdas.
- Copie los datos del primer rango a este segundo rango usando elRange.copyData método.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(CopyRangeDataOnly.class); | |
// Instantiate a new Workbook | |
Workbook workbook = new Workbook(); | |
// Get the first Worksheet Cells | |
Cells cells = workbook.getWorksheets().get(0).getCells(); | |
// Fill some sample data into the cells | |
for (int i = 0; i < 50; i++) { | |
for (int j = 0; j < 10; j++) { | |
cells.get(i, j).putValue(i + "," + j); | |
} | |
} | |
// Create a range (A1:D3). | |
Range range = cells.createRange("A1", "D3"); | |
// Create a style object. | |
Style style = workbook.createStyle(); | |
// Specify the font attribute. | |
style.getFont().setName("Calibri"); | |
// Specify the shading color. | |
style.setForegroundColor(Color.getYellow()); | |
style.setPattern(BackgroundType.SOLID); | |
// Specify the border attributes. | |
style.getBorders().getByBorderType(BorderType.TOP_BORDER).setLineStyle(CellBorderType.THIN); | |
style.getBorders().getByBorderType(BorderType.TOP_BORDER).setColor(Color.getBlue()); | |
style.getBorders().getByBorderType(BorderType.BOTTOM_BORDER).setLineStyle(CellBorderType.THIN); | |
style.getBorders().getByBorderType(BorderType.BOTTOM_BORDER).setColor(Color.getBlue()); | |
style.getBorders().getByBorderType(BorderType.LEFT_BORDER).setLineStyle(CellBorderType.THIN); | |
style.getBorders().getByBorderType(BorderType.LEFT_BORDER).setColor(Color.getBlue()); | |
style.getBorders().getByBorderType(BorderType.RIGHT_BORDER).setLineStyle(CellBorderType.THIN); | |
style.getBorders().getByBorderType(BorderType.RIGHT_BORDER).setColor(Color.getBlue()); | |
// Create the styleflag object. | |
StyleFlag flag = new StyleFlag(); | |
// Implement font attribute | |
flag.setFontName(true); | |
// Implement the shading / fill color. | |
flag.setCellShading(true); | |
// Implment border attributes. | |
flag.setBorders(true); | |
// Set the Range style. | |
range.applyStyle(style, flag); | |
// Create a second range (L9:O11) | |
Range range2 = cells.createRange("L9", "O11"); | |
// Copy the range data only. | |
range2.copyData(range); | |
// Save the Excel file. | |
workbook.save(dataDir + "CopyRangeData.xlsx", SaveFormat.XLSX); | |