Class FilterCriteria

FilterCriteria

ใช้คลาสนี้เพื่อรับข้อมูลเกี่ยวกับหรือคัดลอกเกณฑ์ในตัวกรองที่มีอยู่

การใช้งานทั่วไป

คัดลอกเกณฑ์

ตัวอย่างต่อไปนี้ได้รับตัวกรองที่ใช้กับช่วง A1:C20 ซึ่งได้รับเกณฑ์ ใช้กับคอลัมน์ C และคัดลอกเกณฑ์ไปยังคอลัมน์ B
let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Copies the filter criteria applied to column C.
let filter = range.getFilter();
let criteria = filter.getColumnFilterCriteria(3).copy().build();
// Applies the copied criteria to column B. The copied criteria overwrites any existing
// criteria on column B.
filter.setColumnFilterCriteria(2, criteria);

ซ่อนค่าโดยตัวกรอง

ตัวอย่างต่อไปนี้ได้รับตัวกรองที่ใช้กับช่วงที่ระบุ และบันทึกค่าจาก คอลัมน์ B ที่ตัวกรองซ่อนไว้
let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
copy()FilterCriteriaBuilderคัดลอกเกณฑ์ตัวกรองนี้และสร้างเครื่องมือสร้างเกณฑ์ที่คุณสามารถใช้กับเกณฑ์อื่น ตัวกรอง
getCriteriaType()BooleanCriteriaแสดงผลประเภทบูลีนของเกณฑ์ เช่น CELL_EMPTY
getCriteriaValues()Object[]แสดงผลอาร์เรย์ของอาร์กิวเมนต์สำหรับเกณฑ์บูลีน
getHiddenValues()String[]แสดงผลค่าที่ตัวกรองซ่อนไว้
getVisibleBackgroundColor()Colorแสดงผลสีพื้นหลังที่ใช้เป็นเกณฑ์ตัวกรอง
getVisibleForegroundColor()Colorแสดงผลสีพื้นหน้าที่ใช้เป็นเกณฑ์ตัวกรอง
getVisibleValues()String[]แสดงผลค่าที่ตัวกรองตาราง Pivot แสดง

เอกสารโดยละเอียด

copy()

คัดลอกเกณฑ์ตัวกรองนี้และสร้างเครื่องมือสร้างเกณฑ์ที่คุณสามารถใช้กับเกณฑ์อื่น ตัวกรอง

คุณสามารถใช้วิธีนี้กับตัวกรองประเภทใดก็ได้ หากใช้ตัวกรองชีต คุณจะทำสิ่งต่อไปนี้ได้ คัดลอกเกณฑ์ไปยังคอลัมน์อื่น

let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Makes a copy of the filter criteria applied to column C.
let criteria = filter.getColumnFilterCriteria(3).copy().build();
// Applies the copied criteria to column B. The copied criteria overwrites any existing
// criteria on column B.
filter.setColumnFilterCriteria(2, criteria);

รีเทิร์น

FilterCriteriaBuilder — เครื่องมือสร้างเกณฑ์ตัวกรองตามเกณฑ์ตัวกรองนี้


getCriteriaType()

แสดงผลประเภทบูลีนของเกณฑ์ เช่น CELL_EMPTY เพื่อเรียนรู้เกี่ยวกับประเภทต่างๆ ของเกณฑ์บูลีน โปรดดู enum BooleanCriteria

ผู้ใช้มักใช้วิธีนี้ในการเพิ่มเกณฑ์เงื่อนไขบูลีนลงในตัวกรองโดยไม่ต้องแทนที่ เกณฑ์ที่มีอยู่

  • หากต้องการดูอาร์กิวเมนต์สำหรับเกณฑ์ ให้ใช้ getCriteriaValues()
  • หากต้องการใช้ประเภทของเกณฑ์และค่าเกณฑ์ในการสร้างหรือแก้ไขเกณฑ์ตัวกรอง โปรดดู FilterCriteriaBuilder.withCriteria(criteria, args)

คุณสามารถใช้วิธีนี้กับตัวกรองประเภทใดก็ได้ หากเกณฑ์ตัวกรองไม่ใช่บูลีน สภาพสินค้า แสดงผล null

let ss = SpreadsheetApp.getActiveSheet();
// Gets the filter on the active sheet.
let filter = ss.getFilter();
// Gets the criteria type and returns a string representing the criteria type object.
let criteriaType = filter.getColumnFilterCriteria(2)
                         .getCriteriaType()
                         .toString();
// Logs the criteria type.
console.log(criteriaType);

รีเทิร์น

BooleanCriteria — ประเภทของเกณฑ์บูลีน หรือ null หากเกณฑ์ไม่ใช่ค่าบูลีน


getCriteriaValues()

แสดงผลอาร์เรย์ของอาร์กิวเมนต์สำหรับเกณฑ์บูลีน เกณฑ์บูลีนบางประเภทไม่มี อาร์กิวเมนต์และแสดงผลอาร์เรย์ที่ว่างเปล่า เช่น CELL_NOT_EMPTY

ผู้ใช้มักใช้วิธีนี้ในการเพิ่มเกณฑ์เงื่อนไขบูลีนลงในตัวกรองโดยไม่ต้องแทนที่ เกณฑ์ที่มีอยู่

  • หากต้องการดูประเภทเกณฑ์บูลีน ให้ใช้ getCriteriaType()
  • หากต้องการใช้ประเภทของเกณฑ์และค่าเกณฑ์ในการสร้างหรือแก้ไขเกณฑ์ตัวกรอง โปรดดู FilterCriteriaBuilder.withCriteria(criteria, args)

    คุณสามารถใช้วิธีนี้กับตัวกรองประเภทใดก็ได้

    let ss = SpreadsheetApp.getActiveSheet();
    let filter = ss.getFilter();
    // Gets the values of the boolean criteria and logs them. For example, if the boolean
    // condition is whenNumberGreaterThan(10), then the logged value is 10.
    let criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues();
    console.log(criteriaValues);

    รีเทิร์น

    Object[] — อาร์เรย์ของอาร์กิวเมนต์ที่เหมาะกับประเภทเกณฑ์แบบบูลีน จำนวนอาร์กิวเมนต์ และประเภทของพวกเขาตรงกับเมธอด when...() ที่เกี่ยวข้องของคลาส FilterCriteriaBuilder


getHiddenValues()

แสดงผลค่าที่ตัวกรองซ่อนไว้

ใช้เกณฑ์นี้กับตัวกรองในชีต Grid ซึ่งเป็นประเภทเริ่มต้นของชีต แสดงผล null หากคุณเรียกใช้เมธอดนี้สำหรับตัวกรองประเภทอื่นๆ

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Gets the filter criteria applied to column B, then gets the hidden values.
let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
// Logs the hidden values.
console.log(filterCriteria);

รีเทิร์น

String[] — อาร์เรย์ของค่าที่ตัวกรองซ่อนไว้


getVisibleBackgroundColor()

แสดงผลสีพื้นหลังที่ใช้เป็นเกณฑ์ตัวกรอง เซลล์ที่มีสีพื้นหลังนี้จะยังคงอยู่ มองเห็นได้

ใช้เกณฑ์นี้กับตัวกรองในชีต Grid ซึ่งเป็นประเภทเริ่มต้นของชีต แสดงผล null หากคุณเรียกใช้เมธอดนี้สำหรับตัวกรองประเภทอื่นๆ

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the background color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleBackgroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

รีเทิร์น

Color — สีพื้นหลังที่ใช้เป็นเกณฑ์ตัวกรอง


getVisibleForegroundColor()

แสดงผลสีพื้นหน้าที่ใช้เป็นเกณฑ์ตัวกรอง เซลล์ที่มีสีพื้นหน้าจะยังคงอยู่ มองเห็นได้

ใช้เกณฑ์นี้กับตัวกรองในชีต Grid ซึ่งเป็นประเภทเริ่มต้นของชีต แสดงผล null หากคุณเรียกใช้เมธอดนี้สำหรับตัวกรองประเภทอื่นๆ

let ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
// Logs the foreground color that column B is filtered by as a hexadecimal string.
let filter = range.getFilter();
let color = filter.getColumnFilterCriteria(2)
                  .getVisibleForegroundColor()
                  .asRgbColor()
                  .asHexString();
console.log(color);

รีเทิร์น

Color — สีพื้นหน้าที่ใช้เป็นเกณฑ์ตัวกรอง


getVisibleValues()

แสดงผลค่าที่ตัวกรองตาราง Pivot แสดง

เกณฑ์นี้มีไว้สำหรับตัวกรองในตาราง Pivot ที่ไม่ได้เชื่อมต่อกับฐานข้อมูลเท่านั้น แสดงผลอาร์เรย์ที่ว่างเปล่าสำหรับตัวกรองประเภทอื่นๆ

let ss = SpreadsheetApp.getActiveSheet();
// Gets the first pivot table on the sheet, then gets the visible values of its first filter.
pivotTable = ss.getPivotTables()[0];
pivotFilterValues = pivotTable.getFilters()[0].getFilterCriteria().getVisibleValues();
// Logs the visible values.
console.log(pivotFilterValues);

รีเทิร์น

String[] — อาร์เรย์ของค่าที่ตัวกรองตาราง Pivot แสดง