Cambios en la API pública en Aspose.Cells 8.4.2
APIs Añadidas
Mecanismo mejorado de creación de gráficos
La clase com.aspose.cells.charts.Chart ha expuesto el método setChartDataRange para facilitar la tarea de creación de gráficos. El método setChartDataRange acepta dos parámetros, siendo el primer parámetro de tipo cadena que especifica el área de celdas desde la cual trazar las series de datos. El segundo parámetro es de tipo booleano que especifica la orientación del trazado, es decir; si trazar las series de datos del gráfico desde un rango de valores de celda por fila o por columnas.
El siguiente fragmento de código muestra cómo crear un gráfico de columnas con pocas líneas de código asumiendo que la serie de datos del gráfico está presente en la misma hoja de cálculo desde la celda A1 hasta D4.
Java
//Add a new chart of type Column to chart collection
int idx = worksheet.getCharts().add(ChartType.COLUMN, 6, 5, 20, 13);
//Retrieve the newly added chart instance
Chart chart = worksheet.getCharts().get(idx);
//Specify the chart's data series from cell A1 to D4
chart.setChartDataRange("A1:D4", true);
Método VbaModuleCollection.add agregado
Aspose.Cells for Java 8.4.2 ha expuesto el método VbaModuleCollection.add para agregar un nuevo módulo VBA a la instancia de Workbook. El método VbaModuleCollection.add acepta un parámetro de tipo Worksheet para agregar un módulo específico de la hoja de cálculo.
El siguiente fragmento de código muestra cómo usar el método VbaModuleCollection.add.
Java
//Create new workbook
Workbook workbook = new Workbook();
//Access first worksheet
Worksheet worksheet = workbook.getWorksheets().get(0);
//Add VBA module
int idx = workbook.getVbaProject().getModules().add(worksheet);
//Access the VBA Module, set its name and code
VbaModule module = workbook.getVbaProject().getModules().get(idx);
module.setName("TestModule");
module.setCodes("Sub ShowMessage()" + "\r\n" +
" MsgBox \"Welcome to Aspose!\"" + "\r\n" +
"End Sub");
//Save the workbook
workbook.save(output, SaveFormat.XLSM);
Método sobrecargado Cells.copyColumns agregado
Aspose.Cells for Java 8.4.2 ha expuesto una versión sobrecargada del método Cells.copyColumns para repetir las columnas de origen en el destino. El nuevo método expuesto acepta un total de 5 parámetros, donde los primeros 4 parámetros son iguales que los del método común Cells.copyColumns. Sin embargo, el último parámetro de tipo entero especifica el número de columnas de destino en las cuales se deben repetir las columnas de origen.
El siguiente fragmento de código muestra cómo usar el método Cells.copyColumns recientemente expuesto.
Java
//Load an existing workbook
Workbook workbook = new Workbook(input);
//Access first worksheet
Worksheet worksheet = workbook.getWorksheets().get(0);
//Access cells of first worksheet
Cells cells = worksheet.getCells();
//Copy the first two columns (A & B) along with formatting
//to columns G, H & I.
//Please note, the columns G & H will be replaced by A & B respectively
//whereas, column I will be replaced by the column A
cells.copyColumns(cells, 0, 2, 6, 3);
//Save the workbook
workbook.save(output);
Adición de los campos de enumeración PasteType.DEFAULT y PasteType.ALL_EXCEPT_BORDERS
Con el lanzamiento de v8.4.2, la API Aspose.Cells ha agregado 2 nuevos campos de enumeración para PasteType como se detalla a continuación.
- PasteType.DEFAULT: Funciona de manera similar a la funcionalidad “Todo” de Excel para pegar un rango de celdas.
- PasteType.ALL_EXCEPT_BORDERS: Funciona de manera similar a la funcionalidad “Todo excepto bordes” de Excel para pegar un rango de celdas.
El siguiente código de ejemplo demuestra el uso del campo PasteType.DEFAULT.
Java
//Load an existing workbook
Workbook workbook = new Workbook(input);
//Access first worksheet
Worksheet worksheet = workbook.getWorksheets().get(0);
//Access cells of first worksheet
Cells cells = worksheet.getCells();
//Create source & destination ranges
Range source = cells.createRange("A1:B6");
Range destination = cells.createRange("D1:E6");
//Create an instance of PasteOptions and set its PasteType property
PasteOptions options = new PasteOptions();
options.setPasteType(PasteType.DEFAULT);
//Copy the source range onto the destination range with everything except column widths
destination.copy(source, options);
//Save the workbook
workbook.save(output);