Excel.DataValidationRule interface
数据验证规则包含不同类型的数据验证。 根据 Excel.DataValidationType
,一次只能使用其中一个。
注解
属性
custom | 自定义数据有效性条件。 |
date | 日期数据有效性条件。 |
decimal | 小数数据有效性条件。 |
list | 列表数据有效性条件。 |
text |
文本长度数据验证条件。 |
time | 时间数据有效性条件。 |
whole |
整数数据验证条件。 |
属性详细信息
custom
自定义数据有效性条件。
custom?: Excel.CustomDataValidation;
属性值
注解
date
日期数据有效性条件。
date?: Excel.DateTimeDataValidation;
属性值
注解
decimal
小数数据有效性条件。
decimal?: Excel.BasicDataValidation;
属性值
注解
list
列表数据有效性条件。
list?: Excel.ListDataValidation;
属性值
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/22-data-validation/data-validation.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Decision");
const nameRange =
sheet.tables.getItem("NameOptionsTable").columns.getItem("Baby Name").getDataBodyRange();
// When you are developing, it is a good practice to
// clear the dataValidation object with each run of your code.
nameRange.dataValidation.clear();
const nameSourceRange = context.workbook.worksheets.getItem("Names").getRange("A1:A3");
let approvedListRule = {
list: {
inCellDropDown: true,
source: nameSourceRange
}
};
nameRange.dataValidation.rule = approvedListRule;
await context.sync();
});
textLength
文本长度数据验证条件。
textLength?: Excel.BasicDataValidation;
属性值
注解
time
时间数据有效性条件。
time?: Excel.DateTimeDataValidation;
属性值
注解
wholeNumber
整数数据验证条件。
wholeNumber?: Excel.BasicDataValidation;
属性值
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/22-data-validation/data-validation.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Decision");
const rankingRange = sheet.tables.getItem("NameOptionsTable").columns.getItem("Ranking").getDataBodyRange();
// When you are developing, it is a good practice to
// clear the dataValidation object with each run of your code.
rankingRange.dataValidation.clear();
let greaterThanZeroRule = {
wholeNumber: {
formula1: 0,
operator: Excel.DataValidationOperator.greaterThan
}
};
rankingRange.dataValidation.rule = greaterThanZeroRule;
rankingRange.dataValidation.prompt = {
message: "Please enter a positive number.",
showPrompt: true,
title: "Positive numbers only."
};
rankingRange.dataValidation.errorAlert = {
message: "Sorry, only positive numbers are allowed",
showAlert: true,
style: "Stop",
title: "Negative Number Entered"
};
await context.sync();
});