Hur man arbetar med validering i Java

Översikt

Den här guiden visar hur man lägger till datavalideringsregler och villkorsstyrd formatering i Excel-blad med hjälp av Aspose.Cells FOSS för Java. Datavalidering begränsar cellinmatning till ett godkänt intervall eller lista genom att anropa setType(), setOperator(), setFormula1() och setFormula2() på ett Validation-objekt. Villkorsstyrd formatering tillämpar stilar automatiskt genom att utvärdera FormatConditionType.CELL_VALUE-regler mot varje cell.

Lägg till en heltalsvalideringsregel

Lägg till en Validation till kalkbladets ValidationCollection genom att anropa sheet.getValidations().add(cellArea). Ställ sedan in valideringstyp, operator och gränser med hjälp av setType(), setOperator(), setFormula1() och 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");
}

Lägg till villkorsstyrd formatering

Applicera fet teckensnittformatering på celler vars värde ligger mellan 1 och 100, med hjälp av FormatConditionType.CELL_VALUE och OperatorType.BETWEEN. Hämta FormatConditionCollection, lägg till ett område och ett villkor, och ändra sedan Style som returneras av 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");
}

Stödda valideringstyper

ValidationTypeBeskrivning
WHOLE_NUMBEREndast heltalsvärden
DECIMALDecimala numeriska värden
LISTFördefinierad lista med värden
DATEDatumvärden
TEXT_LENGTHTeckenantal

Se även

 Svenska