Поиск и замена данных в диапазоне

Aspose.Cells обеспечиваетFindOptions.setRange() способ указания диапазона при поиске данных.

Предположим, вы хотите найти строку**“поиск”** и замените его на**“заменять”** В диапазоне**Е3:Н6**. На скриншоте ниже строка «поиск» видна в нескольких ячейках, но мы хотим заменить ее только в заданном диапазоне, здесь выделенном желтым цветом.

Входной файл

дело:изображение_альтернативный_текст

После выполнения кода выходной файл выглядит так, как показано ниже. Все строки «поиск» в пределах диапазона были заменены на «заменить».

Выходной файл

дело:изображение_альтернативный_текст

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

Статьи по Теме