ใช้คลาสนี้เพื่อรับข้อมูลเกี่ยวกับหรือคัดลอกเกณฑ์ในตัวกรองที่มีอยู่
- หากต้องการสร้างตัวกรองใหม่ ให้ดูข้อมูลต่อไปนี้
- สำหรับชีต ให้ใช้
Range.createFilter()
- สำหรับตาราง Pivot ให้ใช้
PivotTable.addFilter(sourceDataColumn, filterCriteria)
- สำหรับชีตที่เชื่อมต่อกับฐานข้อมูล ให้ใช้
DataSourceSheet.addFilter(columnName, filterCriteria)
- สำหรับตาราง Pivot ที่เชื่อมต่อกับฐานข้อมูล ให้ใช้
DataSourcePivotTable.addFilter(columnName, filterCriteria)
- สำหรับชีต ให้ใช้
- หากต้องการสร้างเกณฑ์สำหรับตัวกรองประเภทใดก็ตาม โปรดดู
SpreadsheetApp.newFilterCriteria()
และFilterCriteriaBuilder
การใช้งานทั่วไป
คัดลอกเกณฑ์
ตัวอย่างต่อไปนี้ได้รับตัวกรองที่ใช้กับช่วง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 แสดง