Class Filter

Bộ lọc

Sử dụng lớp này để sửa đổi các bộ lọc hiện có trên trang tính Grid, loại trang tính mặc định. Trang lưới là trang tính thông thường có dữ liệu không được kết nối với cơ sở dữ liệu.

Nếu chưa có bộ lọc trên trang tính, hãy tạo một bộ lọc bằng cách sử dụng Range.createFilter().

Để sử dụng lớp này, trước tiên, bạn phải truy cập vào bộ lọc trang tính dạng lưới bằng cách sử dụng Range.getFilter() hoặc Sheet.getFilter().

Các cách dùng phổ biến

Xoá bộ lọc

Mẫu dưới đây lấy bộ lọc trên trang tính đang hoạt động và xoá bộ lọc đó.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Removes the filter from the active sheet.
filter.remove();

Lấy phạm vi mà bộ lọc áp dụng

Mẫu dưới đây lấy bộ lọc trên trang tính đang hoạt động, sau đó sử dụng phương thức getRange() từ lớp này để ghi lại dải ô mà bộ lọc áp dụng.
const ss = SpreadsheetApp.getActiveSheet();
// Gets the existing filter on the active sheet.
const filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
getColumnFilterCriteria(columnPosition)FilterCriteria|nullLấy tiêu chí lọc trên cột đã chỉ định hoặc null nếu cột không có tiêu chí lọc nào được áp dụng.
getRange()RangeLấy dải ô mà bộ lọc này áp dụng.
remove()voidXoá bộ lọc này.
removeColumnFilterCriteria(columnPosition)FilterXoá tiêu chí lọc khỏi cột đã chỉ định.
setColumnFilterCriteria(columnPosition, filterCriteria)FilterĐặt tiêu chí lọc trên cột đã chỉ định.
sort(columnPosition, ascending)FilterSắp xếp dải ô được lọc theo cột đã chỉ định, không bao gồm hàng đầu tiên (hàng tiêu đề) trong dải ô mà bộ lọc này áp dụng.

Tài liệu chi tiết

getColumnFilterCriteria(columnPosition)

Lấy tiêu chí lọc trên cột đã chỉ định hoặc null nếu cột không có tiêu chí lọc nào được áp dụng.

Để biết thêm thông tin chi tiết về tiêu chí lọc, hãy liên kết phương thức này với các phương thức trong lớp FilterCriteria.

const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Gets the filter criteria applied to column B of the active sheet
// and logs the hidden values.
const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues();
console.log(filterCriteria);

Thông số

TênLoạiMô tả
columnPositionIntegerVị trí của cột (bắt đầu từ 1). Ví dụ: chỉ mục của cột B là 2.

Cầu thủ trả bóng

FilterCriteria|null – Tiêu chí lọc.

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRange()

Lấy dải ô mà bộ lọc này áp dụng.

// Gets the existing filter on the active sheet.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
// Logs the range that the filter applies to in A1 notation.
console.log(filter.getRange().getA1Notation());

Cầu thủ trả bóng

Range – Phạm vi của bộ lọc. Để lấy dải ô ở ký hiệu A1, hãy liên kết phương thức này với Range.getA1Notation().

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

remove()

Xoá bộ lọc này.

// Removes the filter from the active sheet.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.remove();

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeColumnFilterCriteria(columnPosition)

Xoá tiêu chí lọc khỏi cột đã chỉ định.

// Removes the filter criteria from column B.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.removeColumnFilterCriteria(2);

Thông số

TênLoạiMô tả
columnPositionIntegerVị trí của cột (bắt đầu từ 1). Ví dụ: chỉ mục của cột B là 2.

Cầu thủ trả bóng

Filter – Bộ lọc để liên kết.

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

setColumnFilterCriteria(columnPosition, filterCriteria)

Đặt tiêu chí lọc trên cột đã chỉ định. Trước tiên, hãy tạo trình tạo tiêu chí lọc bằng cách sử dụng SpreadsheetApp.newFilterCriteria(). Sau đó, hãy thêm tiêu chí vào trình tạo bằng cách sử dụng lớp FilterCriteriaBuilder. Sau khi bạn tạo tiêu chí, hãy đặt tiêu chí đó làm tham số filterCriteria cho phương thức này.

const ss = SpreadsheetApp.getActiveSheet();
const 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);

Thông số

TênLoạiMô tả
columnPositionIntegerVị trí của cột (bắt đầu từ 1). Ví dụ: chỉ mục của cột B là 2.
filterCriteriaFilterCriteriaTiêu chí lọc cần đặt. Nếu bạn đặt tiêu chí thành null, thì tiêu chí này sẽ xoá tiêu chí lọc khỏi cột đã chỉ định. Bạn cũng có thể dùng phím tắt removeColumnFilterCriteria(columnPosition).

Cầu thủ trả bóng

Filter – Bộ lọc để liên kết.

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

sort(columnPosition, ascending)

Sắp xếp dải ô được lọc theo cột đã chỉ định, không bao gồm hàng đầu tiên (hàng tiêu đề) trong dải ô mà bộ lọc này áp dụng.

// Gets the existing filter and sorts it by column B in ascending order.
const ss = SpreadsheetApp.getActiveSheet();
const filter = ss.getFilter();
filter.sort(2, true);

Thông số

TênLoạiMô tả
columnPositionIntegerVị trí của cột (bắt đầu từ 1). Ví dụ: chỉ mục của cột B là 2.
ascendingBooleanNếu là true, sắp xếp dải ô đã lọc theo thứ tự tăng dần; nếu là false, sắp xếp dải ô đã lọc theo thứ tự giảm dần.

Cầu thủ trả bóng

Filter – Bộ lọc để liên kết.

Ủy quyền

Các tập lệnh sử dụng phương thức này cần được uỷ quyền bằng một hoặc nhiều phạm vi sau đây:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets