Buscar y reemplazar datos en un rango
Contents
[
Hide
]
A veces, necesita buscar y reemplazar datos específicos en un rango, ignorando cualquier valor de celda fuera del rango deseado. Aspose.Cells le permite limitar una búsqueda a un rango específico. Este artículo explica cómo.
Aspose.Cells proporciona elBuscarOpciones.setRange() método para especificar un rango al buscar datos.
Supongamos que desea buscar la cadena**“búsqueda”** y reemplazarlo con**“reemplazar”** en el rango**E3: H6**. En la captura de pantalla a continuación, la cadena “buscar” se puede ver en varias celdas, pero queremos reemplazarla solo en un rango determinado, aquí resaltado en amarillo.
Fichero de entrada
Después de la ejecución del código, el archivo de salida se ve como el siguiente. Todas las cadenas de “búsqueda” dentro del rango han sido reemplazadas por “reemplazar”.
Archivo de salida
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(SearchReplaceDataInRange.class); | |
Workbook workbook = new Workbook(dataDir + "input.xlsx"); | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Specify the range where you want to search | |
// Here the range is E3:H6 | |
CellArea area = CellArea.createCellArea("E3", "H6"); | |
// Specify Find options | |
FindOptions opts = new FindOptions(); | |
opts.setLookInType(LookInType.VALUES); | |
opts.setLookAtType(LookAtType.ENTIRE_CONTENT); | |
opts.setRange(area); | |
Cell cell = null; | |
do { | |
// Search the cell with value search within range | |
cell = worksheet.getCells().find("search", cell, opts); | |
// If no such cell found, then break the loop | |
if (cell == null) | |
break; | |
// Replace the cell with value replace | |
cell.putValue("replace"); | |
} while (true); | |
// Save the workbook | |
workbook.save(dataDir + "output.xlsx"); |