ใช้คลาสนี้เพื่อแก้ไขตัวกรองที่มีอยู่ในชีต Grid
ซึ่งเป็นประเภทเริ่มต้นของ
ชีต ชีตตารางกริดคือชีตปกติซึ่งมีข้อมูลที่ไม่ได้เชื่อมต่อกับฐานข้อมูล
หากยังไม่มีตัวกรองในชีต ให้สร้างตัวกรองโดยใช้ Range.createFilter()
หากต้องการใช้ชั้นเรียนนี้ คุณต้องเข้าถึงตัวกรองชีตตารางกริดโดยใช้ Range.getFilter()
หรือ Sheet.getFilter()
ก่อน
การใช้งานทั่วไป
นำตัวกรองออก
ตัวอย่างด้านล่างจะดึงข้อมูลตัวกรองในชีตที่ใช้งานอยู่และนําตัวกรองออกlet ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Removes the filter from the active sheet. filter.remove();
ดูช่วงที่ใช้ตัวกรอง
ตัวอย่างด้านล่างได้รับตัวกรองในชีตที่ใช้งานอยู่ จากนั้นใช้เมธอดgetRange()
จาก
คลาสนี้เพื่อบันทึกช่วงที่ใช้ตัวกรองดังกล่าว
let ss = SpreadsheetApp.getActiveSheet(); // Gets the existing filter on the active sheet. let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
เมธอด
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
getColumnFilterCriteria(columnPosition) | FilterCriteria | รับเกณฑ์ตัวกรองในคอลัมน์ที่ระบุ หรือ null หากคอลัมน์นั้นไม่มี
เกณฑ์ตัวกรองที่ใช้กับรายงานนั้น |
getRange() | Range | รับช่วงที่ใช้กับตัวกรองนี้ |
remove() | void | นำตัวกรองนี้ออก |
removeColumnFilterCriteria(columnPosition) | Filter | นำเกณฑ์ตัวกรองออกจากคอลัมน์ที่ระบุ |
setColumnFilterCriteria(columnPosition, filterCriteria) | Filter | ตั้งค่าเกณฑ์ตัวกรองในคอลัมน์ที่ระบุ |
sort(columnPosition, ascending) | Filter | จัดเรียงช่วงที่กรองตามคอลัมน์ที่ระบุ โดยไม่รวมแถวแรก (แถวส่วนหัว) ใน ช่วงของตัวกรองนี้ |
เอกสารโดยละเอียด
getColumnFilterCriteria(columnPosition)
รับเกณฑ์ตัวกรองในคอลัมน์ที่ระบุ หรือ null
หากคอลัมน์นั้นไม่มี
เกณฑ์ตัวกรองที่ใช้กับรายงานนั้น
หากต้องการดูรายละเอียดเพิ่มเติมเกี่ยวกับเกณฑ์ตัวกรอง ให้เชื่อมโยงเมธอดนี้ด้วยเมธอดจาก
FilterCriteria
ชั้นเรียน
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Gets the filter criteria applied to column B of the active sheet // and logs the hidden values. let filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues(); console.log(filterCriteria);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnPosition | Integer | ตำแหน่งที่มีการจัดทําดัชนีใน 1 ของคอลัมน์ เช่น ดัชนีของคอลัมน์ B คือ 2 |
รีเทิร์น
FilterCriteria
— เกณฑ์ตัวกรอง
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
รับช่วงที่ใช้กับตัวกรองนี้
// Gets the existing filter on the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Logs the range that the filter applies to in A1 notation. console.log(filter.getRange().getA1Notation());
รีเทิร์น
Range
— ช่วงของตัวกรอง หากต้องการรับช่วงในรูปแบบ A1 ให้เชื่อมโยงเมธอดนี้กับ Range.getA1Notation()
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
remove()
นำตัวกรองนี้ออก
// Removes the filter from the active sheet. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.remove();
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeColumnFilterCriteria(columnPosition)
นำเกณฑ์ตัวกรองออกจากคอลัมน์ที่ระบุ
// Removes the filter criteria from column B. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.removeColumnFilterCriteria(2);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnPosition | Integer | ตำแหน่งที่มีการจัดทําดัชนีใน 1 ของคอลัมน์ เช่น ดัชนีของคอลัมน์ B คือ 2 |
รีเทิร์น
Filter
— ตัวกรองสำหรับการทำสายโซ่
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setColumnFilterCriteria(columnPosition, filterCriteria)
ตั้งค่าเกณฑ์ตัวกรองในคอลัมน์ที่ระบุ ขั้นแรก ให้สร้างเครื่องมือสร้างเกณฑ์ตัวกรอง
ด้วย SpreadsheetApp.newFilterCriteria()
จากนั้นเพิ่มเกณฑ์ลงในเครื่องมือสร้าง
โดยใช้ชั้นเรียน FilterCriteriaBuilder
หลังจากสร้างเกณฑ์แล้ว ให้กำหนดเป็น
พารามิเตอร์ filterCriteria
สำหรับเมธอดนี้
let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); // Builds the filter criteria to use as a parameter for setColumnFilterCriteria. const criteria = SpreadsheetApp.newFilterCriteria() .setHiddenValues(["Hello", "World"]) .build(); // Sets the filter criteria for column C. filter.setColumnFilterCriteria(3, criteria);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnPosition | Integer | ตำแหน่งที่มีการจัดทําดัชนีใน 1 ของคอลัมน์ เช่น ดัชนีของคอลัมน์ B คือ 2 |
filterCriteria | FilterCriteria | เกณฑ์ตัวกรองที่จะกำหนด หากคุณกำหนดเกณฑ์เป็น null
จะนำเกณฑ์ตัวกรองออกจากคอลัมน์ที่ระบุ หรือคุณจะใช้ removeColumnFilterCriteria(columnPosition) ก็ได้ |
รีเทิร์น
Filter
— ตัวกรองสำหรับการทำสายโซ่
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
sort(columnPosition, ascending)
จัดเรียงช่วงที่กรองตามคอลัมน์ที่ระบุ โดยไม่รวมแถวแรก (แถวส่วนหัว) ใน ช่วงของตัวกรองนี้
// Gets the existing filter and sorts it by column B in ascending order. let ss = SpreadsheetApp.getActiveSheet(); let filter = ss.getFilter(); filter.sort(2, true);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnPosition | Integer | ตำแหน่งที่มีการจัดทําดัชนีใน 1 ของคอลัมน์ เช่น ดัชนีของคอลัมน์ B คือ 2 |
ascending | Boolean | หากเป็น true ให้จัดเรียงช่วงที่กรองจากน้อยไปมาก หากเป็น false ให้จัดเรียงช่วงที่กรองจากมากไปน้อย |
รีเทิร์น
Filter
— ตัวกรองสำหรับการทำสายโซ่
การให้สิทธิ์
สคริปต์ที่ใช้เมธอดนี้ต้องมีการให้สิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets