Как работать с проверкой в Java

Обзор

В этом руководстве показано, как добавить правила проверки данных и условное форматирование в рабочие листы Excel с помощью Aspose.Cells FOSS для Java. Подтверждение данных ограничивает ввод ячеек к принятому диапазону или списку путем вызова setType(), setOperator(), setFormula1(), и setFormula2() в отношении: Validation объект. Условное форматирование применяет стили автоматически, оценивая FormatConditionType.CELL_VALUE правила против каждой ячейки.

Добавить правило проверки целочисленных чисел .

Добавить a. Validation к рабочему листу. ValidationCollection позвонив . sheet.getValidations().add(cellArea).Затем настроить тип проверки, оператора и границ с помощью setType(), setOperator(), setFormula1(), и setFormula2():

import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    WorksheetCollection sheets = workbook.getWorksheets();
    Worksheet sheet = sheets.get(0);
    int vi = sheet.getValidations().add(new CellArea(1, 0, 10, 0));
    Validation validation = sheet.getValidations().get(vi);
    validation.setType(ValidationType.WHOLE_NUMBER);
    validation.setOperator(OperatorType.BETWEEN);
    validation.setFormula1("1");
    validation.setFormula2("100");
    workbook.save("validated.xlsx");
}

Дополнительное форматирование с условиями

Применение форматирования черно-белого шрифта для ячеек с значениями от 1 до 100, используя: FormatConditionType.CELL_VALUE и в том числе: OperatorType.BETWEEN.- Возвращайтесь . FormatConditionCollection, добавить область и условие, затем изменить Style возвращенный condition.getStyle():

import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.FormatCondition;
import com.aspose.cells_foss.FormatConditionCollection;
import com.aspose.cells_foss.FormatConditionType;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    WorksheetCollection sheets = workbook.getWorksheets();
    Worksheet sheet = sheets.get(0);
    int cfIndex = sheet.getConditionalFormattings().add();
    FormatConditionCollection conditions = sheet.getConditionalFormattings().get(cfIndex);
    conditions.addArea(CellArea.createCellArea("B2", "B11"));
    int condIndex = conditions.addCondition(
        FormatConditionType.CELL_VALUE, OperatorType.BETWEEN, "1", "100");
    FormatCondition condition = conditions.get(condIndex);
    Style style = condition.getStyle();
    style.getFont().setBold(true);
    condition.setStyle(style);
    workbook.save("conditional.xlsx");
}

Поддерживаемые типы проверки

ValidationTypeDescription
WHOLE_NUMBERТолько целые числа
DECIMALЧисленные значения десятичных чисел
LISTПредварительный перечень значений
DATEЗначения даты
TEXT_LENGTHКоличество символов

См. также:

 Русский