Excel.DataValidation class
Представляет проверку данных, примененную к текущему диапазону. Дополнительные сведения об объектной модели проверки данных см. в статье Добавление проверки данных в диапазоны Excel.
- Extends
Комментарии
Используется
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/22-data-validation/data-validation-types.yaml
function applyWholeNumber(sheet: Excel.Worksheet) {
// Only integers greater than 0 are allowed.
const basicRule: Excel.BasicDataValidation = {
formula1: 0,
operator: Excel.DataValidationOperator.greaterThan
};
const rule: Excel.DataValidationRule = { wholeNumber: basicRule };
sheet.getRange("B2").dataValidation.rule = rule;
}
Свойства
| context | Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office. |
| error |
Сообщение об ошибке, когда пользователь вводит недопустимые данные. |
| ignore |
Указывает, будет ли выполняться проверка данных для пустых ячеек. Значение по умолчанию — |
| prompt | Вывод запроса при выборе пользователем ячейки. |
| rule | Правило проверки данных, содержащее условия проверки данных другого типа. |
| type | Тип проверки данных см |
| valid | Указывает, являются ли все значения ячеек допустимыми в соответствии с правилами проверки данных. Возвращает |
Методы
| clear() | Очищает проверку данных из текущего диапазона. |
| get |
Возвращает объект, состоящий из одного или нескольких прямоугольных диапазонов с недопустимыми |
| get |
Возвращает объект, состоящий из одного или нескольких прямоугольных диапазонов с недопустимыми |
| load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| set(properties, options) | Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа. |
| set(properties) | Одновременно задает несколько свойств объекта на основе существующего загруженного объекта. |
| toJSON() | Переопределяет метод JavaScript |
Сведения о свойстве
context
Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.
context: RequestContext;
Значение свойства
errorAlert
Сообщение об ошибке, когда пользователь вводит недопустимые данные.
errorAlert: Excel.DataValidationErrorAlert;
Значение свойства
Комментарии
Примеры
// 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 commentsRange =
sheet.tables.getItem("NameOptionsTable").columns.getItem("Comments").getDataBodyRange();
// When you are developing, it is a good practice to
// clear the dataValidation object with each run of your code.
commentsRange.dataValidation.clear();
// If the value of A2 is contained in the value of C2, then
// SEARCH(A2,C2) returns the number where it begins. Otherwise,
// it does not return a number.
let redundantStringRule = {
custom: {
formula: "=NOT(ISNUMBER(SEARCH(A2,C2)))"
}
};
commentsRange.dataValidation.rule = redundantStringRule;
commentsRange.dataValidation.errorAlert = {
message: "It is redundant to include the baby name in the comment.",
showAlert: true,
style: Excel.DataValidationAlertStyle.information,
title: "Baby Name in Comment"
};
await context.sync();
});
ignoreBlanks
Указывает, будет ли выполняться проверка данных для пустых ячеек. Значение по умолчанию — true.
ignoreBlanks: boolean;
Значение свойства
boolean
Комментарии
prompt
Вывод запроса при выборе пользователем ячейки.
prompt: Excel.DataValidationPrompt;
Значение свойства
Комментарии
Примеры
// 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: Excel.DataValidationAlertStyle.stop,
title: "Negative Number Entered"
};
await context.sync();
});
rule
Правило проверки данных, содержащее условия проверки данных другого типа.
rule: Excel.DataValidationRule;
Значение свойства
Комментарии
Примеры
// 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();
});
type
Тип проверки данных см Excel.DataValidationType . подробнее.
readonly type: Excel.DataValidationType | "None" | "WholeNumber" | "Decimal" | "List" | "Date" | "Time" | "TextLength" | "Custom" | "Inconsistent" | "MixedCriteria";
Значение свойства
Excel.DataValidationType | "None" | "WholeNumber" | "Decimal" | "List" | "Date" | "Time" | "TextLength" | "Custom" | "Inconsistent" | "MixedCriteria"
Комментарии
valid
Указывает, являются ли все значения ячеек допустимыми в соответствии с правилами проверки данных. Возвращает true , если все значения ячеек допустимы или false все значения ячеек недопустимы. Возвращает значение null допустимых и недопустимых значений в ячейках.
readonly valid: boolean;
Значение свойства
boolean
Комментарии
Сведения о методе
clear()
Очищает проверку данных из текущего диапазона.
clear(): void;
Возвращаемое значение
void
Комментарии
getInvalidCells()
Возвращает объект, состоящий из одного или нескольких прямоугольных диапазонов с недопустимыми RangeAreas значениями ячеек. Если все значения ячеек допустимы, эта функция выдаст ItemNotFound ошибку.
getInvalidCells(): Excel.RangeAreas;
Возвращаемое значение
Комментарии
getInvalidCellsOrNullObject()
Возвращает объект, состоящий из одного или нескольких прямоугольных диапазонов с недопустимыми RangeAreas значениями ячеек. Если все значения ячеек допустимы, функция возвращает null.
getInvalidCellsOrNullObject(): Excel.RangeAreas;
Возвращаемое значение
Комментарии
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(options?: Excel.Interfaces.DataValidationLoadOptions): Excel.DataValidation;
Параметры
Предоставляет параметры для загружаемых свойств объекта.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNames?: string | string[]): Excel.DataValidation;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Excel.DataValidation;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.
Возвращаемое значение
set(properties, options)
Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа.
set(properties: Interfaces.DataValidationUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Excel.Interfaces.DataValidationUpdateData
Объект JavaScript со свойствами, структурированными изоморфно свойствам объекта, для которого вызывается метод.
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект properties пытается задать какие-либо свойства только для чтения.
Возвращаемое значение
void
set(properties)
Одновременно задает несколько свойств объекта на основе существующего загруженного объекта.
set(properties: Excel.DataValidation): void;
Параметры
- properties
- Excel.DataValidation
Возвращаемое значение
void
toJSON()
Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Excel.DataValidation объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Excel.Interfaces.DataValidationData), который содержит неглубокие копии любых загруженных дочерних свойств исходного объекта.
toJSON(): Excel.Interfaces.DataValidationData;