Class DataValidation

데이터검증

데이터 확인 규칙에 액세스합니다. 새 규칙을 만들려면 SpreadsheetApp.newDataValidation()DataValidationBuilder를 사용합니다. Range.setDataValidation(rule)를 사용하여 범위에 대한 유효성 검사 규칙을 설정할 수 있습니다.

// 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.');
}

메서드

메서드반환 유형간략한 설명
copy()DataValidationBuilder이 규칙의 설정을 기반으로 데이터 유효성 검사 규칙의 빌더를 만듭니다.
getAllowInvalid()Boolean입력 데이터 유효성 검사에 실패하면 규칙에서 경고를 표시하는 경우 true를 반환하고 입력을 완전히 거부하는 경우 false를 반환합니다.
getCriteriaType()DataValidationCriteriaDataValidationCriteria enum에 정의된 대로 규칙의 기준 유형을 가져옵니다.
getCriteriaValues()Object[]규칙의 기준에 관한 인수 배열을 가져옵니다.
getHelpText()String규칙의 도움말 텍스트를 가져오거나 도움말 텍스트가 설정되지 않은 경우 null를 가져옵니다.

자세한 문서

copy()

이 규칙의 설정을 기반으로 데이터 유효성 검사 규칙의 빌더를 만듭니다.

// 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);

리턴

DataValidationBuilder: 이 규칙의 설정을 기반으로 하는 빌더


getAllowInvalid()

입력 데이터 유효성 검사에 실패하면 규칙에서 경고를 표시하는 경우 true를 반환하고 입력을 완전히 거부하는 경우 false를 반환합니다. 새 데이터 확인 규칙의 기본값은 true입니다.

리턴

Boolean: 규칙에서 데이터 유효성 검사에 실패하는 입력을 허용하는 경우 true, 허용하지 않는 경우 false입니다.


getCriteriaType()

DataValidationCriteria enum에 정의된 대로 규칙의 기준 유형을 가져옵니다. 기준의 인수를 가져오려면 getCriteriaValues()를 사용합니다. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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.');
}

리턴

DataValidationCriteria: 데이터 유효성 검사 기준 유형


getCriteriaValues()

규칙의 기준에 관한 인수 배열을 가져옵니다. 기준 유형을 가져오려면 getCriteriaType()를 사용합니다. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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.');
}

리턴

Object[]: 규칙의 기준 유형에 적합한 인수 배열입니다. 인수의 개수와 유형은 DataValidationBuilder 클래스의 상응하는 require...() 메서드와 일치합니다.


getHelpText()

규칙의 도움말 텍스트를 가져오거나 도움말 텍스트가 설정되지 않은 경우 null를 가져옵니다.

리턴

String: 규칙의 도움말 텍스트 또는 도움말 텍스트가 설정되지 않은 경우 null