Class DataValidationBuilder

데이터검증빌더

데이터 검증 규칙 빌더입니다.

// Set the data validation for cell A1 to require a value from B1:B10.
const cell = SpreadsheetApp.getActive().getRange('A1');
const range = SpreadsheetApp.getActive().getRange('B1:B10');
const rule =
    SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);

메서드

메서드반환 유형간략한 설명
build()DataValidation빌더에 적용된 설정에서 데이터 유효성 검사 규칙을 구성합니다.
copy()DataValidationBuilder이 규칙의 설정을 기반으로 데이터 유효성 검사 규칙의 빌더를 만듭니다.
getAllowInvalid()Boolean입력 데이터 유효성 검사에 실패하면 규칙에서 경고를 표시하는 경우 true를 반환하고 입력을 완전히 거부하는 경우 false를 반환합니다.
getCriteriaType()DataValidationCriteriaDataValidationCriteria enum에 정의된 대로 규칙의 기준 유형을 가져옵니다.
getCriteriaValues()Object[]규칙의 기준에 관한 인수 배열을 가져옵니다.
getHelpText()String규칙의 도움말 텍스트를 가져오거나 도움말 텍스트가 설정되지 않은 경우 null를 가져옵니다.
requireCheckbox()DataValidationBuilder입력이 불리언 값이어야 하는 데이터 유효성 검사 규칙을 설정합니다. 이 값은 체크박스로 렌더링됩니다.
requireCheckbox(checkedValue)DataValidationBuilder입력 값이 지정된 값이거나 비워야 하도록 데이터 유효성 검사 규칙을 설정합니다.
requireCheckbox(checkedValue, uncheckedValue)DataValidationBuilder입력이 지정된 값 중 하나여야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireDate()DataValidationBuilder날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateAfter(date)DataValidationBuilder지정된 값 이후의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateBefore(date)DataValidationBuilder지정된 값보다 이전 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateBetween(start, end)DataValidationBuilder지정된 두 날짜 사이의 날짜 또는 두 날짜 중 하나를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateEqualTo(date)DataValidationBuilder지정된 값과 동일한 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateNotBetween(start, end)DataValidationBuilder지정된 두 날짜 사이 또는 지정된 두 날짜가 아닌 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateOnOrAfter(date)DataValidationBuilder지정된 값 이후의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireDateOnOrBefore(date)DataValidationBuilder지정된 값 이전의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireFormulaSatisfied(formula)DataValidationBuilder지정된 수식이 true으로 평가되도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberBetween(start, end)DataValidationBuilder지정된 두 숫자 사이의 숫자 또는 지정된 두 숫자 중 하나를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberEqualTo(number)DataValidationBuilder지정된 값과 동일한 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberGreaterThan(number)DataValidationBuilder지정된 값보다 큰 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberGreaterThanOrEqualTo(number)DataValidationBuilder지정된 값보다 크거나 같은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberLessThan(number)DataValidationBuilder지정된 값보다 작은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberLessThanOrEqualTo(number)DataValidationBuilder지정된 값보다 작거나 같은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberNotBetween(start, end)DataValidationBuilder지정된 두 숫자 사이 또는 지정된 두 숫자가 아닌 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireNumberNotEqualTo(number)DataValidationBuilder지정된 값과 같지 않은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.
requireTextContains(text)DataValidationBuilder입력에 지정된 값이 포함되어야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireTextDoesNotContain(text)DataValidationBuilder입력에 지정된 값이 포함되지 않아야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireTextEqualTo(text)DataValidationBuilder입력이 지정된 값과 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireTextIsEmail()DataValidationBuilder입력값이 이메일 주소 형식이어야 하도록 데이터 유효성 검사 규칙을 설정합니다.
requireTextIsUrl()DataValidationBuilder입력이 URL 형식이어야 하도록 데이터 유효성 검사 규칙을 설정합니다.
requireValueInList(values)DataValidationBuilder입력이 지정된 값 중 하나와 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireValueInList(values, showDropdown)DataValidationBuilder입력이 주어진 값 중 하나와 같아야 하는 데이터 유효성 검사 규칙을 설정하고 드롭다운 메뉴를 숨기는 옵션을 제공합니다.
requireValueInRange(range)DataValidationBuilder입력이 지정된 범위의 값과 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.
requireValueInRange(range, showDropdown)DataValidationBuilder입력값이 지정된 범위의 값과 같아야 하는 데이터 유효성 검사 규칙을 설정하고 드롭다운 메뉴를 숨기는 옵션을 제공합니다.
setAllowInvalid(allowInvalidData)DataValidationBuilder입력 데이터 유효성 검사에 실패할 때 경고를 표시할지 또는 입력을 완전히 거부할지 설정합니다.
setHelpText(helpText)DataValidationBuilder사용자가 데이터 유효성 검사가 설정된 셀 위로 마우스를 가져갈 때 표시되는 도움말 텍스트를 설정합니다.
withCriteria(criteria, args)DataValidationBuilder데이터 유효성 검사 규칙을 DataValidationCriteria 값으로 정의된 기준으로 설정합니다. 일반적으로 기존 규칙의 criteriaarguments에서 가져옵니다.

자세한 문서

build()

빌더에 적용된 설정에서 데이터 유효성 검사 규칙을 구성합니다.

리턴

DataValidation: 데이터 유효성 검사 규칙의 표현


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()를 사용합니다. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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()를 사용합니다. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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


requireCheckbox()

입력이 불리언 값이어야 하는 데이터 유효성 검사 규칙을 설정합니다. 이 값은 체크박스로 렌더링됩니다.

// Set the data validation for cell A1 to require a boolean value; the value is
// rendered as a checkbox.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation().requireCheckbox().build();
cell.setDataValidation(rule);

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireCheckbox(checkedValue)

입력 값이 지정된 값이거나 비워야 하도록 데이터 유효성 검사 규칙을 설정합니다. 입력이 지정된 값과 일치하면 셀이 선택된 체크박스로 렌더링됩니다. 입력이 비어 있으면 셀이 선택 해제된 체크박스로 렌더링됩니다.

// Set the data validation for cell A1 to require a custom checked value that is
// rendered as a checkbox.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireCheckbox('APPROVED').build();
cell.setDataValidation(rule);

매개변수

이름유형설명
checkedValueObject선택된 체크박스에 할당된 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireCheckbox(checkedValue, uncheckedValue)

입력이 지정된 값 중 하나여야 하는 데이터 유효성 검사 규칙을 설정합니다. 입력이 checkedValue이면 셀이 선택된 체크박스로 렌더링됩니다. 입력이 uncheckedValue이면 셀이 선택 해제된 체크박스로 렌더링됩니다.

// Set the data validation for cell A1 to require custom checked values that are
// rendered as a checkbox.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireCheckbox('APPROVED', 'PENDING')
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
checkedValueObject선택된 체크박스에 할당된 값입니다.
uncheckedValueObject선택되지 않은 체크박스에 할당된 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDate()

날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a date.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation().requireDate().build();
cell.setDataValidation(rule);

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateAfter(date)

지정된 값 이후의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date after January 1, 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireDateAfter(new Date('1/1/2013'))
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
dateDate허용되지 않는 가장 늦은 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateBefore(date)

지정된 값보다 이전 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date before January 1, 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireDateBefore(new Date('1/1/2013'))
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
dateDate허용되지 않는 가장 빠른 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateBetween(start, end)

지정된 두 날짜 사이의 날짜 또는 두 날짜 중 하나를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date in 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation()
        .requireDateBetween(new Date('1/1/2013'), new Date('12/31/2013'))
        .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
startDate허용되는 가장 빠른 날짜입니다.
endDate허용되는 가장 늦은 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateEqualTo(date)

지정된 값과 동일한 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date equal to January 1,
// 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireDateEqualTo(new Date('1/1/2013'))
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
dateDate유일하게 허용되는 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateNotBetween(start, end)

지정된 두 날짜 사이 또는 지정된 두 날짜가 아닌 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date not in 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation()
        .requireDateNotBetween(new Date('1/1/2013'), new Date('12/31/2013'))
        .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
startDate허용되지 않는 가장 빠른 날짜입니다.
endDate허용되지 않는 가장 늦은 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateOnOrAfter(date)

지정된 값 이후의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date on or after January 1,
// 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireDateOnOrAfter(new Date('1/1/2013'))
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
dateDate허용되는 가장 빠른 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireDateOnOrBefore(date)

지정된 값 이전의 날짜를 요구하도록 데이터 유효성 검사 규칙을 설정합니다. Date 객체의 시간 필드는 무시됩니다. 일, 월, 연도 필드만 사용됩니다.

// Set the data validation for cell A1 to require a date on or before January 1,
// 2013.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireDateOnOrBefore(new Date('1/1/2013'))
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
dateDate허용되는 가장 늦은 날짜입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireFormulaSatisfied(formula)

지정된 수식이 true으로 평가되도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to equal B1 with a custom formula.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireFormulaSatisfied('=EQ(A1,B1)')
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
formulaString입력이 유효한 경우 true로 평가되는 맞춤 수식입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberBetween(start, end)

지정된 두 숫자 사이의 숫자 또는 지정된 두 숫자 중 하나를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number between 1 and 10.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberBetween(1, 10).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
startNumber허용되는 최솟값입니다.
endNumber허용되는 가장 높은 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberEqualTo(number)

지정된 값과 동일한 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number equal
// to 3.1415926536.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberEqualTo(Math.PI).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber유일하게 허용되는 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberGreaterThan(number)

지정된 값보다 큰 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number greater than 0.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberGreaterThan(0).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber허용되지 않는 가장 높은 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberGreaterThanOrEqualTo(number)

지정된 값보다 크거나 같은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number greater than or equal
// to 0.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireNumberGreaterThanOrEqualTo(0)
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber허용되는 최솟값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberLessThan(number)

지정된 값보다 작은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number less than 0.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberLessThan(0).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber허용되지 않는 최솟값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberLessThanOrEqualTo(number)

지정된 값보다 작거나 같은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number less than or equal to
// 0.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireNumberLessThanOrEqualTo(0)
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber허용되는 가장 높은 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberNotBetween(start, end)

지정된 두 숫자 사이 또는 지정된 두 숫자가 아닌 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number not between 1 and 10.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberNotBetween(1, 10).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
startNumber허용되지 않는 최솟값입니다.
endNumber허용되지 않는 가장 높은 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireNumberNotEqualTo(number)

지정된 값과 같지 않은 숫자를 요구하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a number not equal to 0.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireNumberNotEqualTo(0).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
numberNumber유일하게 허용되지 않는 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireTextContains(text)

입력에 지정된 값이 포함되어야 하는 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require any value that includes
// "Google".
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireTextContains('Google').build();
cell.setDataValidation(rule);

매개변수

이름유형설명
textString입력에 포함되어야 하는 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireTextDoesNotContain(text)

입력에 지정된 값이 포함되지 않아야 하는 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require any value that does not
// include "@".
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireTextDoesNotContain('@').build();
cell.setDataValidation(rule);

매개변수

이름유형설명
textString입력에 포함되어서는 안 되는 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireTextEqualTo(text)

입력이 지정된 값과 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require "Yes".
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule =
    SpreadsheetApp.newDataValidation().requireTextEqualTo('Yes').build();
cell.setDataValidation(rule);

매개변수

이름유형설명
textString유일하게 허용되는 값입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireTextIsEmail()

입력값이 이메일 주소 형식이어야 하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require text in the form of an email
// address.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation().requireTextIsEmail().build();
cell.setDataValidation(rule);

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireTextIsUrl()

입력이 URL 형식이어야 하도록 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require text in the form of a URL.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation().requireTextIsUrl().build();
cell.setDataValidation(rule);

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireValueInList(values)

입력이 지정된 값 중 하나와 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require "Yes" or "No", with a dropdown
// menu.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireValueInList(['Yes', 'No'])
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
valuesString[]허용되는 값의 배열입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireValueInList(values, showDropdown)

입력이 주어진 값 중 하나와 같아야 하는 데이터 유효성 검사 규칙을 설정하고 드롭다운 메뉴를 숨기는 옵션을 제공합니다.

// Set the data validation for cell A1 to require "Yes" or "No", with no
// dropdown menu.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = SpreadsheetApp.newDataValidation()
                 .requireValueInList(['Yes', 'No'], false)
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
valuesString[]허용되는 값의 배열입니다.
showDropdownBoolean스프레드시트에 값의 드롭다운 메뉴를 표시해야 하는 경우 true이고 표시하지 않아야 하는 경우 false입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireValueInRange(range)

입력이 지정된 범위의 값과 같아야 하는 데이터 유효성 검사 규칙을 설정합니다.

// Set the data validation for cell A1 to require a value from B1:B10, with a
// dropdown menu.
const cell = SpreadsheetApp.getActive().getRange('A1');
const range = SpreadsheetApp.getActive().getRange('B1:B10');
const rule =
    SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);

매개변수

이름유형설명
rangeRange허용되는 값이 포함된 범위입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


requireValueInRange(range, showDropdown)

입력값이 지정된 범위의 값과 같아야 하는 데이터 유효성 검사 규칙을 설정하고 드롭다운 메뉴를 숨기는 옵션을 제공합니다.

// Set the data validation for cell A1 to require value from B1:B10, with no
// dropdown menu.
const cell = SpreadsheetApp.getActive().getRange('A1');
const range = SpreadsheetApp.getActive().getRange('B1:B10');
const rule = SpreadsheetApp.newDataValidation()
                 .requireValueInRange(range, false)
                 .build();
cell.setDataValidation(rule);

매개변수

이름유형설명
rangeRange허용되는 값이 포함된 범위입니다.
showDropdownBoolean스프레드시트에 값의 드롭다운 메뉴를 표시해야 하는 경우 true이고 표시하지 않아야 하는 경우 false입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


setAllowInvalid(allowInvalidData)

입력 데이터 유효성 검사에 실패할 때 경고를 표시할지 또는 입력을 완전히 거부할지 설정합니다. 새 데이터 확인 규칙의 기본값은 true입니다.

매개변수

이름유형설명
allowInvalidDataBoolean규칙에서 데이터 유효성 검사에 실패한 입력을 허용해야 하는 경우 true이고, 그렇지 않은 경우 false입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


setHelpText(helpText)

사용자가 데이터 유효성 검사가 설정된 셀 위로 마우스를 가져갈 때 표시되는 도움말 텍스트를 설정합니다.

매개변수

이름유형설명
helpTextString설정할 도움말 텍스트입니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더


withCriteria(criteria, args)

데이터 유효성 검사 규칙을 DataValidationCriteria 값으로 정의된 기준으로 설정합니다. 일반적으로 기존 규칙의 criteriaarguments에서 가져옵니다.

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

매개변수

이름유형설명
criteriaDataValidationCriteria데이터 유효성 검사 기준의 유형입니다.
argsObject[]기준 유형에 적합한 인수 배열입니다. 인수의 개수와 유형은 위에 나온 상응하는 require...() 메서드와 일치합니다.

리턴

DataValidationBuilder: 체이닝을 위한 이 빌더