Class DataValidationBuilder

DataValidationBuilder

資料驗證規則的建構工具。

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

方法

方法傳回類型簡短說明
build()DataValidation根據套用至建構工具的設定,建立資料驗證規則。
copy()DataValidationBuilder根據這項規則的設定,建立資料驗證規則的建構工具。
getAllowInvalid()Boolean如果規則在輸入資料驗證失敗時顯示警告,則傳回 true;如果規則完全拒絕輸入內容,則會傳回 false
getCriteriaType()DataValidationCriteria取得 DataValidationCriteria 列舉中定義的規則條件類型。
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設定資料驗證規則,要求輸入內容須採用網址格式。
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.
var oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];
var newDates = [new Date('1/1/2014'), new Date('12/31/2014')];
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());
var rules = range.getDataValidations();

for (var i = 0; i < rules.length; i++) {
  for (var j = 0; j < rules[i].length; j++) {
    var rule = rules[i][j];

    if (rule != null) {
      var criteria = rule.getCriteriaType();
      var 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 列舉中定義的規則條件類型。如要取得條件的引數,請使用 getCriteriaValues()。如要使用這些值建立或修改資料驗證規則,請參閱 withCriteria(criteria, args)

// Log information about the data validation rule for cell A1.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = cell.getDataValidation();
if (rule != null) {
  var criteria = rule.getCriteriaType();
  var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = cell.getDataValidation();
if (rule != null) {
  var criteria = rule.getCriteriaType();
  var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberEqualTo(3.1415926536).build();
cell.setDataValidation(rule);

參數

名稱類型說明
numberNumber唯一可接受的值。

回攻員

DataValidationBuilder:這個建構工具用於鏈結


requireNumberGreaterThan(number)

設定資料驗證規則,要求的數字必須大於指定值。

// Set the data validation for cell A1 to require a number greater than 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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".
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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 "@".
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextDoesNotContain('@').build();
cell.setDataValidation(rule);

參數

名稱類型說明
textString輸入內容不得包含的值。

回攻員

DataValidationBuilder:這個建構工具用於鏈結


requireTextEqualTo(text)

設定資料驗證規則,要求輸入內容等於指定值。

// Set the data validation for cell A1 to require "Yes".
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextIsEmail().build();
cell.setDataValidation(rule);

回攻員

DataValidationBuilder:這個建構工具用於鏈結


requireTextIsUrl()

設定資料驗證規則,要求輸入內容採用網址格式。

// Set the data validation for cell A1 to require text in the form of a URL.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireValueInList(['Yes', 'No'], false).build();
cell.setDataValidation(rule);

參數

名稱類型說明
valuesString[]可接受的值陣列。
showDropdownBooleantrue (如果試算表應顯示值下拉式選單),則為 false

回攻員

DataValidationBuilder:這個建構工具用於鏈結


requireValueInRange(range)

設定資料驗證規則,要求輸入內容等於指定範圍內的值。

// Set the data validation for cell A1 to require a value from B1:B10, with a dropdown menu.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRange('B1:B10');
var 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRange('B1:B10');
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(range, false).build();
cell.setDataValidation(rule);

參數

名稱類型說明
rangeRange包含可接受的值的範圍。
showDropdownBooleantrue (如果試算表應顯示值下拉式選單),則為 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.
var oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];
var newDates = [new Date('1/1/2014'), new Date('12/31/2014')];
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());
var rules = range.getDataValidations();

for (var i = 0; i < rules.length; i++) {
  for (var j = 0; j < rules[i].length; j++) {
    var rule = rules[i][j];

    if (rule != null) {
      var criteria = rule.getCriteriaType();
      var 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:這個建構工具用於鏈結