Office js 如何使用office js读取Excel单元格的验证?
如何使用office js阅读已经实现的数据验证,我已经阅读了页面,新的api在测试版中可用,现在我正在尝试如何在excel中实现此验证?有关数据验证api的文档可在中找到 此外,还有一个脚本实验室片段,其中包含Excel中数据验证的多个示例。只需安装ScriptLab附加模块free:,然后在Excel中打开ScriptLab代码窗口,在导航菜单中选择Samples,然后选择位于示例列表底部附近的Preview API标题下的数据验证示例 打开代码段后,您可以在“代码”窗格中查看代码以查看数据验证的示例,并使用“运行”窗格测试/运行代码段以查看正在进行的数据验证。例如,代码段中的以下函数添加了需要正数的验证规则:Office js 如何使用office js读取Excel单元格的验证?,office-js,Office Js,如何使用office js阅读已经实现的数据验证,我已经阅读了页面,新的api在测试版中可用,现在我正在尝试如何在excel中实现此验证?有关数据验证api的文档可在中找到 此外,还有一个脚本实验室片段,其中包含Excel中数据验证的多个示例。只需安装ScriptLab附加模块free:,然后在Excel中打开ScriptLab代码窗口,在导航菜单中选择Samples,然后选择位于示例列表底部附近的Preview API标题下的数据验证示例 打开代码段后,您可以在“代码”窗格中查看代码以查看数据
async function addPositiveNumberRequirement() {
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
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();
});
}
谢谢你的回答。我已经尝试了样本数据。但我试图阅读office.js中的验证,这意味着如果我通过允许的脚本输入了错误的值,我如何克服这一问题?@mkHun数据验证只验证用户输入,不验证编程输入,因此如果您使用office js或VBA或任何其他编程方式设置值或公式,然后,它将允许您设置它们,而不考虑数据验证。@PhilipRueker-感谢您对此的澄清。是否可以通过编程方式使用Office.js API确定给定范围内有效的数据验证规则(如有),以便开发人员能够主动避免将违反数据验证规则的数据写入工作表?@KimBrandl目前没有,但这是我们的功能待办事项,可能会添加到我们的下一个功能浪潮中。