Class DataValidation
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Xác thựcdữ liệu
Truy cập vào quy tắc xác thực dữ liệu. Để tạo quy tắc mới, hãy sử dụng SpreadsheetApp.newDataValidation()
và DataValidationBuilder
. Bạn có thể sử dụng Range.setDataValidation(rule)
để đặt quy tắc xác thực cho một dải ô.
// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
const criteria = rule.getCriteriaType();
const args = rule.getCriteriaValues();
Logger.log('The data validation rule is %s %s', criteria, args);
} else {
Logger.log('The cell does not have a data validation rule.');
}
Tài liệu chi tiết
copy()
Tạo một trình tạo cho quy tắc xác thực dữ liệu dựa trên chế độ cài đặt của quy tắc này.
// Change existing data validation rules that require a date in 2013 to require
// a date in 2014.
const oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];
const newDates = [new Date('1/1/2014'), new Date('12/31/2014')];
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());
const rules = range.getDataValidations();
for (let i = 0; i < rules.length; i++) {
for (let j = 0; j < rules[i].length; j++) {
const rule = rules[i][j];
if (rule != null) {
const criteria = rule.getCriteriaType();
const args = rule.getCriteriaValues();
if (criteria === SpreadsheetApp.DataValidationCriteria.DATE_BETWEEN &&
args[0].getTime() === oldDates[0].getTime() &&
args[1].getTime() === oldDates[1].getTime()) {
// Create a builder from the existing rule, then change the dates.
rules[i][j] = rule.copy().withCriteria(criteria, newDates).build();
}
}
}
}
range.setDataValidations(rules);
Cầu thủ trả bóng
DataValidationBuilder
– một trình tạo dựa trên chế độ cài đặt của quy tắc này
getAllowInvalid()
Trả về true
nếu quy tắc hiển thị cảnh báo khi dữ liệu đầu vào không được xác thực hoặc false
nếu quy tắc từ chối hoàn toàn dữ liệu đầu vào. Giá trị mặc định cho quy tắc xác thực dữ liệu mới là true
.
Cầu thủ trả bóng
Boolean
– true
nếu quy tắc cho phép dữ liệu đầu vào không xác thực được; false
nếu không
getCriteriaType()
Lấy loại tiêu chí của quy tắc như được xác định trong enum DataValidationCriteria
. Để lấy các đối số cho tiêu chí, hãy sử dụng getCriteriaValues()
. Để sử dụng các giá trị này nhằm tạo hoặc sửa đổi quy tắc xác thực dữ liệu, hãy xem DataValidationBuilder.withCriteria(criteria, args)
.
// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
const criteria = rule.getCriteriaType();
const args = rule.getCriteriaValues();
Logger.log('The data validation rule is %s %s', criteria, args);
} else {
Logger.log('The cell does not have a data validation rule.');
}
Cầu thủ trả bóng
DataValidationCriteria
– loại tiêu chí xác thực dữ liệu
getCriteriaValues()
Lấy một mảng đối số cho tiêu chí của quy tắc. Để lấy loại tiêu chí, hãy sử dụng getCriteriaType()
. Để sử dụng các giá trị này nhằm tạo hoặc sửa đổi quy tắc xác thực dữ liệu, hãy xem DataValidationBuilder.withCriteria(criteria, args)
.
// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
const criteria = rule.getCriteriaType();
const args = rule.getCriteriaValues();
Logger.log('The data validation rule is %s %s', criteria, args);
} else {
Logger.log('The cell does not have a data validation rule.');
}
Cầu thủ trả bóng
Object[]
– một mảng đối số phù hợp với loại tiêu chí của quy tắc; số lượng đối số và loại đối số khớp với phương thức require...()
tương ứng của lớp DataValidationBuilder
getHelpText()
Lấy văn bản trợ giúp của quy tắc hoặc null
nếu không đặt văn bản trợ giúp.
Cầu thủ trả bóng
String
– văn bản trợ giúp của quy tắc hoặc null
nếu không đặt văn bản trợ giúp
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-26 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-26 UTC."],[[["\u003cp\u003e\u003ccode\u003eDataValidation\u003c/code\u003e objects give you access to data validation rules applied to spreadsheet ranges.\u003c/p\u003e\n"],["\u003cp\u003eYou can use the \u003ccode\u003eSpreadsheetApp.newDataValidation()\u003c/code\u003e and \u003ccode\u003eDataValidationBuilder\u003c/code\u003e classes to programmatically create new validation rules in your sheet.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eDataValidation\u003c/code\u003e provides methods such as \u003ccode\u003egetCriteriaType()\u003c/code\u003e, \u003ccode\u003egetCriteriaValues()\u003c/code\u003e and \u003ccode\u003egetHelpText()\u003c/code\u003e to examine details of an existing validation rule.\u003c/p\u003e\n"],["\u003cp\u003eUsing \u003ccode\u003ecopy()\u003c/code\u003e and \u003ccode\u003ewithCriteria()\u003c/code\u003e on an existing \u003ccode\u003eDataValidation\u003c/code\u003e object helps modify current validation rules without recreating them from scratch.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003egetAllowInvalid()\u003c/code\u003e allows you to determine if a rule will show warnings or reject invalid input outright.\u003c/p\u003e\n"]]],[],null,["# Class DataValidation\n\nDataValidation\n\nAccess data validation rules. To create a new rule, use [SpreadsheetApp.newDataValidation()](/apps-script/reference/spreadsheet/spreadsheet-app#newDataValidation()) and [DataValidationBuilder](/apps-script/reference/spreadsheet/data-validation-builder). You can use\n[Range.setDataValidation(rule)](/apps-script/reference/spreadsheet/range#setDataValidation(DataValidation)) to set the validation rule for a range.\n\n```javascript\n// Log information about the data validation rule for cell A1.\nconst cell = SpreadsheetApp.getActive().getRange('A1');\nconst rule = cell.getDataValidation();\nif (rule != null) {\n const criteria = rule.getCriteriaType();\n const args = rule.getCriteriaValues();\n Logger.log('The data validation rule is %s %s', criteria, args);\n} else {\n Logger.log('The cell does not have a data validation rule.');\n}\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|---------------------------------------------|---------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|\n| [copy()](#copy()) | [DataValidationBuilder](/apps-script/reference/spreadsheet/data-validation-builder) | Creates a builder for a data validation rule based on this rule's settings. |\n| [getAllowInvalid()](#getAllowInvalid()) | `Boolean` | Returns `true` if the rule shows a warning when input fails data validation, or `false` if it rejects the input entirely. |\n| [getCriteriaType()](#getCriteriaType()) | [DataValidationCriteria](/apps-script/reference/spreadsheet/data-validation-criteria) | Gets the rule's criteria type as defined in the [DataValidationCriteria](/apps-script/reference/spreadsheet/data-validation-criteria) enum. |\n| [getCriteriaValues()](#getCriteriaValues()) | `Object[]` | Gets an array of arguments for the rule's criteria. |\n| [getHelpText()](#getHelpText()) | `String` | Gets the rule's help text, or `null` if no help text is set. |\n\nDetailed documentation\n----------------------\n\n### `copy()`\n\nCreates a builder for a data validation rule based on this rule's settings.\n\n```javascript\n// Change existing data validation rules that require a date in 2013 to require\n// a date in 2014.\nconst oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];\nconst newDates = [new Date('1/1/2014'), new Date('12/31/2014')];\nconst sheet = SpreadsheetApp.getActiveSheet();\nconst range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());\nconst rules = range.getDataValidations();\n\nfor (let i = 0; i \u003c rules.length; i++) {\n for (let j = 0; j \u003c rules[i].length; j++) {\n const rule = rules[i][j];\n\n if (rule != null) {\n const criteria = rule.getCriteriaType();\n const args = rule.getCriteriaValues();\n\n if (criteria === SpreadsheetApp.DataValidationCriteria.DATE_BETWEEN &&\n args[0].getTime() === oldDates[0].getTime() &&\n args[1].getTime() === oldDates[1].getTime()) {\n // Create a builder from the existing rule, then change the dates.\n rules[i][j] = rule.copy().withCriteria(criteria, newDates).build();\n }\n }\n }\n}\nrange.setDataValidations(rules);\n```\n\n#### Return\n\n\n[DataValidationBuilder](/apps-script/reference/spreadsheet/data-validation-builder) --- a builder based on this rule's settings\n\n*** ** * ** ***\n\n### `get``Allow``Invalid()`\n\nReturns `true` if the rule shows a warning when input fails data validation, or `false` if it rejects the input entirely. The default for new data validation rules is `true`.\n\n#### Return\n\n\n`Boolean` --- `true` if the rule allows input that fails data validation; `false` if not\n\n*** ** * ** ***\n\n### `get``Criteria``Type()`\n\nGets the rule's criteria type as defined in the [DataValidationCriteria](/apps-script/reference/spreadsheet/data-validation-criteria) enum. To get the\narguments for the criteria, use [getCriteriaValues()](#getCriteriaValues()). To use these values to create or\nmodify a data validation rule, see [DataValidationBuilder.withCriteria(criteria, args)](/apps-script/reference/spreadsheet/data-validation-builder#withCriteria(DataValidationCriteria,Object)).\n\n```javascript\n// Log information about the data validation rule for cell A1.\nconst cell = SpreadsheetApp.getActive().getRange('A1');\nconst rule = cell.getDataValidation();\nif (rule != null) {\n const criteria = rule.getCriteriaType();\n const args = rule.getCriteriaValues();\n Logger.log('The data validation rule is %s %s', criteria, args);\n} else {\n Logger.log('The cell does not have a data validation rule.');\n}\n```\n\n#### Return\n\n\n[DataValidationCriteria](/apps-script/reference/spreadsheet/data-validation-criteria) --- the type of data validation criteria\n\n*** ** * ** ***\n\n### `get``Criteria``Values()`\n\nGets an array of arguments for the rule's criteria. To get the criteria type, use [getCriteriaType()](#getCriteriaType()). To use these values to create or modify a data validation rule, see [DataValidationBuilder.withCriteria(criteria, args)](/apps-script/reference/spreadsheet/data-validation-builder#withCriteria(DataValidationCriteria,Object)).\n\n```javascript\n// Log information about the data validation rule for cell A1.\nconst cell = SpreadsheetApp.getActive().getRange('A1');\nconst rule = cell.getDataValidation();\nif (rule != null) {\n const criteria = rule.getCriteriaType();\n const args = rule.getCriteriaValues();\n Logger.log('The data validation rule is %s %s', criteria, args);\n} else {\n Logger.log('The cell does not have a data validation rule.');\n}\n```\n\n#### Return\n\n\n`Object[]` --- an array of arguments appropriate to the rule's criteria type; the number of arguments\nand their type match the corresponding `require...()` method of the [DataValidationBuilder](/apps-script/reference/spreadsheet/data-validation-builder) class\n\n*** ** * ** ***\n\n### `get``Help``Text()`\n\nGets the rule's help text, or `null` if no help text is set.\n\n#### Return\n\n\n`String` --- the rule's help text, or `null` if no help text is set"]]