Usa esta clase para obtener información sobre los filtros existentes o copiar los criterios de estos.
- Para crear un filtro nuevo, consulta lo siguiente:
- Para las hojas de cálculo, usa
Range.createFilter()
. - Para las tablas dinámicas, usa
PivotTable.addFilter(sourceDataColumn, filterCriteria)
. - Para las hojas que están conectadas a una base de datos, usa
DataSourceSheet.addFilter(columnName, filterCriteria)
. - Para las tablas dinámicas que están conectadas a una base de datos, usa
DataSourcePivotTable.addFilter(columnName, filterCriteria)
.
- Para las hojas de cálculo, usa
- Si deseas crear los criterios para cualquier tipo de filtro, consulta
SpreadsheetApp.newFilterCriteria()
yFilterCriteriaBuilder
.
Usos comunes
Copiar criterios
En la siguiente muestra, se obtiene el filtro que se aplica al rangoA1:C20
y los criterios.
aplicado a la columna C y copia los criterios en la columna 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);
Cómo obtener valores ocultos por el filtro
En el siguiente ejemplo, se obtiene el filtro que se aplica al rango dado y se registran los valores de la columna B que el filtro oculta.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);
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
copy() | FilterCriteriaBuilder | Copia estos criterios de filtro y crea un compilador de criterios que puedes aplicar a otro. filtro. |
getCriteriaType() | BooleanCriteria | Muestra el tipo booleano de los criterios, por ejemplo, CELL_EMPTY . |
getCriteriaValues() | Object[] | Muestra una matriz de argumentos para criterios booleanos. |
getHiddenValues() | String[] | Muestra los valores que el filtro oculta. |
getVisibleBackgroundColor() | Color | Muestra el color de fondo utilizado como criterio de filtro. |
getVisibleForegroundColor() | Color | Muestra el color de primer plano utilizado como criterio de filtro. |
getVisibleValues() | String[] | Muestra los valores que muestra el filtro de tabla dinámica. |
Documentación detallada
copy()
Copia estos criterios de filtro y crea un compilador de criterios que puedes aplicar a otro. filtro.
Puedes usar este método con cualquier tipo de filtro. Si utilizas un filtro de hoja, puedes copia los criterios en otra columna.
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);
Volver
FilterCriteriaBuilder
: Es un compilador de criterios de filtro basado en estos criterios de filtro.
getCriteriaType()
Muestra el tipo booleano de los criterios, por ejemplo, CELL_EMPTY
. Para aprender sobre los tipos
de criterios booleanos, consulta la enumeración BooleanCriteria
.
Las personas suelen utilizar este método para agregar criterios de condiciones booleanas a un filtro sin reemplazar los criterios existentes.
- Para obtener los argumentos de los criterios, usa
getCriteriaValues()
. - Si deseas usar el tipo y los valores de criterios para crear o modificar los criterios de filtro, consulta
FilterCriteriaBuilder.withCriteria(criteria, args)
Puedes usar este método para cualquier tipo de filtro. Si los criterios de filtro no son booleanos
condición, muestra 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);
Volver
BooleanCriteria
: Indica el tipo de criterio booleano, o null
si el criterio no es booleano.
estado.
getCriteriaValues()
Muestra una matriz de argumentos para criterios booleanos. Algunos tipos de criterios booleanos no tienen
argumentos y muestra un array vacío, por ejemplo, CELL_NOT_EMPTY
.
Las personas suelen utilizar este método para agregar criterios de condiciones booleanas a un filtro sin reemplazar los criterios existentes.
- Para obtener el tipo de criterios booleanos, usa
getCriteriaType()
. - Si deseas usar el tipo y los valores de criterios para crear o modificar un criterio de filtro, consulta
FilterCriteriaBuilder.withCriteria(criteria, args)
Puedes usar este método para cualquier tipo de filtro.
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);
Volver
Object[]
: Es un array de argumentos apropiados para el tipo de criterios booleanos. La cantidad de argumentos y su tipo coinciden con el métodowhen...()
correspondiente de la claseFilterCriteriaBuilder
.
getHiddenValues()
Muestra los valores que el filtro oculta.
Usa este criterio con filtros en las hojas de Grid
, el tipo de hoja predeterminado.
Muestra null
si llamas a este método para otros tipos de filtros.
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);
Volver
String[]
: Es un array de valores que el filtro oculta.
getVisibleBackgroundColor()
Muestra el color de fondo utilizado como criterio de filtro. Las celdas con este color de fondo permanecen sean visibles.
Usa este criterio con filtros en las hojas de Grid
, el tipo de hoja predeterminado.
Muestra null
si llamas a este método para otros tipos de filtros.
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);
Volver
Color
: Es el color de fondo que se usa como criterio de filtro.
getVisibleForegroundColor()
Muestra el color de primer plano utilizado como criterio de filtro. Las celdas con este color de primer plano permanecen sean visibles.
Usa este criterio con filtros en las hojas de Grid
, el tipo de hoja predeterminado.
Muestra null
si llamas a este método para otros tipos de filtros.
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);
Volver
Color
: Indica el color de primer plano que se usa como criterio de filtro.
getVisibleValues()
Muestra los valores que muestra el filtro de tabla dinámica.
Este criterio es solo para los filtros de las tablas dinámicas que no están conectados a una base de datos. Muestra un array vacío para otros tipos de filtros.
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);
Volver
String[]
: Es un array de valores que muestra el filtro de tabla dinámica.