Es un compilador de criterios de filtro. Para agregar criterios a un filtro, debes hacer lo siguiente:
- Crea el compilador de criterios con
Spreadsheet.App.newFilterCriteria() - Agrega parámetros de configuración al compilador con los métodos de esta clase.
- Usa
build()para ensamblar los criterios con la configuración que especificaste.
Usos comunes
Cómo ocultar valores en una hoja
En el siguiente ejemplo, se obtiene el filtro existente de una hoja y se agregan criterios que ocultan las celdas de la columna C que contienen "hello" o "world". Los criterios de este ejemplo solo se pueden usar con filtros en hojas deGrid, el tipo de hoja predeterminado.
const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); const criteria = SpreadsheetApp.newFilterCriteria() .setHiddenValues(['hello', 'world']) .build(); filter.setColumnFilterCriteria(3, criteria);
Mostrar solo las celdas no vacías
En el siguiente ejemplo, se agrega un filtro a una hojaData Source, una hoja conectada a una base de datos, con criterios que solo muestran las celdas de la columna "Categoría" que no están vacías.
// Gets the sheet named "Connected sheet," which is connected to a database. const sheet = SpreadsheetApp.getActiveSpreadsheet() .getSheetByName('Connected sheet') .asDataSourceSheet(); // Creates criteria that only shows non-empty cells. const criteria = SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build(); // Applies the criteria to the column named "Category." sheet.addFilter('Category', criteria);
Métodos
| Método | Tipo de datos que se muestra | Descripción breve |
|---|---|---|
build() | Filter | Ensambla los criterios de filtro con la configuración que agregas al compilador de criterios. |
copy() | Filter | Copia estos criterios de filtro y crea un compilador de criterios que puedes aplicar a otro filtro. |
get | Boolean | Devuelve el tipo booleano del criterio, por ejemplo, CELL_EMPTY. |
get | Object[] | Devuelve un array de argumentos para criterios booleanos. |
get | String[] | Devuelve los valores que oculta el filtro. |
get | Color|null | Devuelve el color de fondo que se usa como criterio de filtro. |
get | Color|null | Devuelve el color de primer plano que se usa como criterio de filtro. |
get | String[] | Devuelve los valores que muestra el filtro de la tabla dinámica. |
set | Filter | Establece los valores que se ocultarán. |
set | Filter | Establece el color de fondo que se usa como criterio de filtro. |
set | Filter | Establece el color de primer plano que se usa como criterio de filtro. |
set | Filter | Establece los valores que se mostrarán en una tabla dinámica. |
when | Filter | Establece los criterios de filtro para mostrar celdas vacías. |
when | Filter | Establece los criterios de filtro para mostrar las celdas que no están vacías. |
when | Filter | Establece criterios de filtro que muestran las celdas con fechas posteriores a la fecha especificada. |
when | Filter | Establece criterios de filtro que muestran las celdas con fechas posteriores a la fecha relativa especificada. |
when | Filter | Establece criterios de filtro que muestran las celdas con fechas anteriores a la fecha especificada. |
when | Filter | Establece criterios de filtro que muestran las celdas con fechas anteriores a la fecha relativa especificada. |
when | Filter | Establece criterios de filtro que muestran las celdas con fechas iguales a la fecha especificada. |
when | Filter | Establece criterios de filtro que muestran celdas con fechas iguales a la fecha relativa especificada. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con fechas iguales a cualquiera de las fechas especificadas. |
when | Filter | Establece los criterios del filtro para mostrar las celdas que no son iguales a la fecha especificada. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con fechas que no son iguales a ninguna de las fechas especificadas. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con una fórmula especificada (como =B:B<C:C) que se evalúa como true. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número que se encuentre entre 2 números especificados o que sea igual a cualquiera de ellos. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número igual al número especificado. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con un número igual a cualquiera de los números especificados. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número mayor que el especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número mayor o igual que el número especificado. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con un número inferior al especificado. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con un número menor o igual que el número especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número que no se encuentre entre 2 números especificados ni sea igual a ninguno de ellos. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número que no sea igual al número especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con un número que no sea igual a ninguno de los números especificados. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con texto que contengan el texto especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con texto que no contiene el texto especificado. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con texto que termina con el texto especificado. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con texto que sea igual al texto especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con texto que sea igual a cualquiera de los valores de texto especificados. |
when | Filter | Establece los criterios del filtro para mostrar las celdas con texto que no sea igual al texto especificado. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con texto que no sea igual a ninguno de los valores especificados. |
when | Filter | Establece los criterios de filtro para mostrar las celdas con texto que comienza con el texto especificado. |
with | Filter | Establece los criterios de filtro en una condición booleana definida por valores de Boolean, como CELL_EMPTY o NUMBER_GREATER_THAN. |
Documentación detallada
build()
Ensambla los criterios de filtro con la configuración que agregas al compilador de criterios.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); const criteria = SpreadsheetApp .newFilterCriteria() // Creates a criteria builder. .whenCellNotEmpty() // Adds settings to the builder. .build(); // Assembles the criteria. filter.setColumnFilterCriteria(2, criteria);
Volver
Filter: Es una representación de los criterios de filtro.
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 usas un filtro de hoja, puedes copiar los criterios en otra columna.
const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Makes a copy of the filter criteria applied to column C. const 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
Filter: Es un compilador de criterios de filtro basado en este criterio de filtro.
get Criteria Type()
Devuelve el tipo booleano del criterio, por ejemplo, CELL_EMPTY. Para obtener información sobre los tipos de criterios booleanos, consulta la enumeración Boolean.
Las personas suelen usar este método para agregar criterios de condición booleana a un filtro sin reemplazar los criterios existentes.
- Para obtener los argumentos de los criterios, usa
get.Criteria Values() - Para usar el tipo de criterio y los valores de criterio para crear o modificar criterios de filtro, consulta
with.Criteria(criteria, args)
Puedes usar este método para cualquier tipo de filtro. Si el criterio de filtro no es una condición booleana, devuelve null.
const ss = SpreadsheetApp.getActiveSheet(); // Gets the filter on the active sheet. const filter = ss.getFilter(); // Gets the criteria type and returns a string representing the criteria type // object. const criteriaType = filter.getColumnFilterCriteria(2).getCriteriaType().toString(); // Logs the criteria type. console.log(criteriaType);
Volver
Boolean: Es el tipo de criterio booleano o null si el criterio no es una condición booleana.
get Criteria Values()
Devuelve un array de argumentos para criterios booleanos. Algunos tipos de criterios booleanos no tienen argumentos y devuelven un array vacío, por ejemplo, CELL_NOT_EMPTY.
Las personas suelen usar este método para agregar criterios de condición booleana a un filtro sin reemplazar los criterios existentes.
- Para obtener el tipo de criterio booleano, usa
get.Criteria Type() - Para usar el tipo de criterio y los valores de criterio para crear o modificar un criterio de filtro, consulta
with.Criteria(criteria, args) Puedes usar este método para cualquier tipo de filtro.
const ss = SpreadsheetApp.getActiveSheet(); const 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. const criteriaValues = filter.getColumnFilterCriteria(2).getCriteriaValues(); console.log(criteriaValues);
Volver
Object[]: Es un array de argumentos adecuados para el tipo de criterio booleano. La cantidad de argumentos y su tipo coinciden con el métodowhen...()correspondiente de la claseFilter.Criteria Builder
get Hidden Values()
Devuelve los valores que oculta el filtro.
Usa este criterio con filtros en las hojas de Grid, el tipo de hoja predeterminado.
Devuelve null si llamas a este método para otros tipos de filtros.
const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Gets the filter criteria applied to column B, then gets the hidden values. const filterCriteria = filter.getColumnFilterCriteria(2).getHiddenValues(); // Logs the hidden values. console.log(filterCriteria);
Volver
String[]: Es un array de valores que oculta el filtro.
get Visible Background Color()
Devuelve el color de fondo que se usa como criterio de filtro. Las celdas con este color de fondo permanecen visibles.
Usa este criterio con filtros en las hojas de Grid, el tipo de hoja predeterminado.
Devuelve null si llamas a este método para otros tipos de filtros.
const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); // Logs the background color that column B is filtered by as a hexadecimal // string. const filter = range.getFilter(); const color = filter.getColumnFilterCriteria(2) .getVisibleBackgroundColor() .asRgbColor() .asHexString(); console.log(color);
Volver
Color|null: Es el color de fondo que se usa como criterio de filtro.
get Visible Foreground Color()
Devuelve el color de primer plano que se usa como criterio de filtro. Las celdas con este color de primer plano permanecen visibles.
Usa este criterio con filtros en las hojas de Grid, el tipo de hoja predeterminado.
Devuelve null si llamas a este método para otros tipos de filtros.
const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); // Logs the foreground color that column B is filtered by as a hexadecimal // string. const filter = range.getFilter(); const color = filter.getColumnFilterCriteria(2) .getVisibleForegroundColor() .asRgbColor() .asHexString(); console.log(color);
Volver
Color|null: Es el color de primer plano que se usa como criterio de filtro.
get Visible Values()
Devuelve los valores que muestra el filtro de la tabla dinámica.
Este criterio solo se aplica a los filtros de las tablas dinámicas que no están conectadas a una base de datos. Devuelve un array vacío para otros tipos de filtros.
const ss = SpreadsheetApp.getActiveSheet(); // Gets the first pivot table on the sheet, then gets the visible values of its // first filter. const pivotTable = ss.getPivotTables()[0]; const 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 la tabla dinámica.
set Hidden Values(values)
Establece los valores que se ocultarán. Borra los valores existentes visibles u ocultos.
Solo puedes usar este criterio para los filtros en las hojas de Grid, que son el tipo de hoja predeterminado.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Sets the values to hide and applies the criteria to column C. const criteria = SpreadsheetApp.newFilterCriteria() .setHiddenValues(['Hello', 'World']) .build(); filter.setColumnFilterCriteria(3, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
values | String[] | Es la lista de valores que se ocultarán. |
Volver
Filter: Este compilador, para encadenar.
Arroja
Error: Si alguno de los valores es null.
set Visible Background Color(visibleBackgroundColor)
Establece el color de fondo que se usa como criterio de filtro. Las celdas con este color de fondo permanecen visibles. Si se establece un criterio de filtro de color de fondo, se quitarán todos los criterios de filtro de color actuales de este compilador.
Solo puedes usar este criterio para los filtros en las hojas de Grid, que son el tipo de hoja predeterminado.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that filters by background color and sets it to column B. const color = SpreadsheetApp.newColor().setRgbColor('#185ABC').build(); const criteria = SpreadsheetApp.newFilterCriteria().setVisibleBackgroundColor(color).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
visible | Color | Color de fondo que se establecerá. El color debe ser un color de estilo RGB. Este método no admite colores del tema. |
Volver
Filter: Este compilador, para encadenar.
set Visible Foreground Color(visibleForegroundColor)
Establece el color de primer plano que se usa como criterio de filtro. Las celdas con este color de primer plano permanecen visibles. Si se establece un criterio de filtro de color de primer plano, se quitará cualquier criterio de filtro de color actual de este compilador.
Solo puedes usar este criterio para los filtros en las hojas de Grid, que son el tipo de hoja predeterminado.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that filters by foreground color and sets it to column B. const color = SpreadsheetApp.newColor().setRgbColor('#185ABC').build(); const criteria = SpreadsheetApp.newFilterCriteria().setVisibleForegroundColor(color).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
visible | Color | Color de primer plano que se establecerá. El color debe ser un color de estilo RGB. Este método no admite colores del tema. |
Volver
Filter: Este compilador, para encadenar.
set Visible Values(values)
Establece los valores que se mostrarán en una tabla dinámica. Borra los valores existentes visibles u ocultos.
Solo puedes usar este criterio para los filtros en tablas dinámicas que no estén conectadas a una base de datos.
// Gets the active sheet. const ss = SpreadsheetApp.getActiveSheet(); // Gets the first pivot table on the sheet and adds a filter to it that // sets the visible values to "Northeast" and "Southwest." const pivotTable = ss.getPivotTables()[0]; const criteria = SpreadsheetApp.newFilterCriteria() .setVisibleValues(['Northeast', 'Southwest']) .build(); pivotTable.addFilter(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
values | String[] | Es la lista de valores que se mostrarán. |
Volver
Filter: Este compilador, para encadenar.
Arroja
Error: Si alguno de los valores es null.
when Cell Empty()
Establece los criterios de filtro para mostrar celdas vacías.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Sets criteria to column B that only shows empty cells. const criteria = SpreadsheetApp.newFilterCriteria().whenCellEmpty().build(); filter.setColumnFilterCriteria(2, criteria);
Volver
Filter: Este compilador, para encadenar.
when Cell Not Empty()
Establece los criterios de filtro para mostrar las celdas que no están vacías.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Sets criteria to column B that only shows cells that aren't empty. const criteria = SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build(); filter.setColumnFilterCriteria(2, criteria);
Volver
Filter: Este compilador, para encadenar.
when Date After(date)
Establece criterios de filtro que muestran las celdas con fechas posteriores a la fecha especificada.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates after June 1, 2022 // and sets it to column A. const date = new Date('June 1, 2022'); const criteria = SpreadsheetApp.newFilterCriteria().whenDateAfter(date).build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Date | Es la fecha más reciente que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Date After(date)
Establece criterios de filtro que muestran las celdas con fechas posteriores a la fecha relativa especificada. Para ver las opciones de fechas relativas, consulta la enumeración Relative.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates after today's date // and sets it to column A. const criteria = SpreadsheetApp.newFilterCriteria() .whenDateAfter(SpreadsheetApp.RelativeDate.TODAY) .build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Relative | Es la fecha relativa más reciente. |
Volver
Filter: Este compilador, para encadenar.
when Date Before(date)
Establece criterios de filtro que muestran las celdas con fechas anteriores a la fecha especificada.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates before June 1, 2022 // and sets it to column A. const date = new Date('June 1, 2022'); const criteria = SpreadsheetApp.newFilterCriteria().whenDateBefore(date).build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Date | Es la fecha más temprana para ocultar. |
Volver
Filter: Este compilador, para encadenar.
when Date Before(date)
Establece criterios de filtro que muestran las celdas con fechas anteriores a la fecha relativa especificada.
Para ver las opciones de fechas relativas, consulta Enum Relative.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates before today's date // and sets it to column A. const criteria = SpreadsheetApp.newFilterCriteria() .whenDateBefore(SpreadsheetApp.RelativeDate.TODAY) .build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Relative | Es la fecha relativa más antigua para ocultar. |
Volver
Filter: Este compilador, para encadenar.
when Date Equal To(date)
Establece criterios de filtro que muestran las celdas con fechas iguales a la fecha especificada.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates equal to June 1, 2022 // and sets it to column A. const date = new Date('June 1, 2022'); const criteria = SpreadsheetApp.newFilterCriteria().whenDateEqualTo(date).build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Date | Es la fecha con la que deben coincidir los valores de las celdas. |
Volver
Filter: Este compilador, para encadenar.
when Date Equal To(date)
Establece criterios de filtro que muestran celdas con fechas iguales a la fecha relativa especificada.
Para ver las opciones de fechas relativas, consulta Enum Relative.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser una fecha. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no tiene que ser una fecha, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the range. const ss = SpreadsheetApp.getActiveSheet(); const range = ss.getRange('A1:C20'); const filter = range.getFilter(); // Creates criteria that only shows cells with dates that fall within the past // month and sets it to column A. const criteria = SpreadsheetApp.newFilterCriteria() .whenDateEqualTo(SpreadsheetApp.RelativeDate.PAST_MONTH) .build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Relative | Es la fecha relativa con la que deben coincidir los valores de las celdas. |
Volver
Filter: Este compilador, para encadenar.
when Date Equal To Any(dates)
Establece los criterios de filtro para mostrar las celdas con fechas iguales a cualquiera de las fechas especificadas.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "date" column that shows cells with any of the below // dates. const date1 = new Date('June 1, 2022'); const date2 = new Date('June 2, 2022'); const date3 = new Date('June 3, 2022'); const criteria = SpreadsheetApp.newFilterCriteria() .whenDateEqualToAny([date1, date2, date3]) .build(); dataSheet.addFilter('date', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
dates | Date[] | Son las fechas que se mostrarán. |
Volver
Filter: Este compilador, para encadenar.
when Date Not Equal To(date)
Establece los criterios del filtro para mostrar las celdas que no son iguales a la fecha especificada.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
El tipo de datos de la columna por la que filtras debe ser una fecha.
// Gets a pivot table that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Pivot Table Sheet'); const dataPivotTable = ss.getDataSourcePivotTables()[0]; // Creates criteria that only shows cells that don't equal June 16, 2022 // and sets it to the "date" column. const date = new Date('June 16, 2022'); const criteria = SpreadsheetApp.newFilterCriteria().whenDateNotEqualTo(date).build(); dataPivotTable.addFilter('date', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
date | Date | Fecha que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Date Not Equal To Any(dates)
Establece los criterios de filtro para mostrar las celdas con fechas que no son iguales a ninguna de las fechas especificadas.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "date" column that hides cells with any of the below // dates. const date1 = new Date('June 1, 2022'); const date2 = new Date('June 2, 2022'); const date3 = new Date('June 3, 2022'); const criteria = SpreadsheetApp.newFilterCriteria() .whenDateNotEqualToAny([date1, date2, date3]) .build(); dataSheet.addFilter('date', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
dates | Date[] | Son las fechas que se ocultarán. |
Volver
Filter: Este compilador, para encadenar.
when Formula Satisfied(formula)
Establece los criterios del filtro para mostrar las celdas con una fórmula especificada (como =B:B<C:C) que se evalúa como true.
Solo puedes usar este criterio para filtrar datos que no estén conectados a una base de datos.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows the rows where the value in column B is less than // the value in column C and sets it to column A. const formula = '=B:B<C:C'; const criteria = SpreadsheetApp.newFilterCriteria().whenFormulaSatisfied(formula).build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
formula | String | Es una fórmula personalizada que se evalúa como true si la entrada es válida. |
Volver
Filter: Este compilador, para encadenar.
when Number Between(start, end)
Establece los criterios de filtro para mostrar las celdas con un número que se encuentre entre 2 números especificados o que sea igual a cualquiera de ellos.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that only shows cells with numbers that fall between 1-25, // inclusively, and sets it to column A. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberBetween(1, 25).build(); filter.setColumnFilterCriteria(1, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
start | Number | Es el número más bajo que se mostrará. |
end | Number | Es el número más alto que se mostrará. |
Volver
Filter: Este compilador, para encadenar.
when Number Equal To(number)
Establece los criterios de filtro para mostrar las celdas con un número igual al número especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that only shows cells that are equal to 25 and sets it to // column B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberEqualTo(25).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número que se mostrará. |
Volver
Filter: Este compilador, para encadenar.
when Number Equal To Any(numbers)
Establece los criterios del filtro para mostrar las celdas con un número igual a cualquiera de los números especificados.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "amount" column that only shows cells with the number // 10, 20, or 30. const criteria = SpreadsheetApp.newFilterCriteria() .whenNumberEqualToAny([10, 20, 30]) .build(); dataSheet.addFilter('amount', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
numbers | Number[] | Son los números que se mostrarán. |
Volver
Filter: Este compilador, para encadenar.
when Number Greater Than(number)
Establece los criterios de filtro para mostrar las celdas con un número mayor que el especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells greater than 10 and sets it to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberGreaterThan(10).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número más alto que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Number Greater Than Or Equal To(number)
Establece los criterios de filtro para mostrar las celdas con un número mayor o igual que el número especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells greater than or equal to 10 and sets it to // column B. const criteria = SpreadsheetApp.newFilterCriteria() .whenNumberGreaterThanOrEqualTo(10) .build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número más bajo que se mostrará. |
Volver
Filter: Este compilador, para encadenar.
when Number Less Than(number)
Establece los criterios del filtro para mostrar las celdas con un número inferior al especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells less than 10 and sets it to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberLessThan(10).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número más bajo que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Number Less Than Or Equal To(number)
Establece los criterios del filtro para mostrar las celdas con un número menor o igual que el número especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells less than or equal to 10 and sets it to // column B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberLessThanOrEqualTo(10).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número más alto que se mostrará. |
Volver
Filter: Este compilador, para encadenar.
when Number Not Between(start, end)
Establece los criterios de filtro para mostrar las celdas con un número que no se encuentre entre 2 números especificados ni sea igual a ninguno de ellos.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that hides cells with numbers that fall between 1-25, // inclusively, and sets it to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberNotBetween(1, 25).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
start | Number | Oculta el número más bajo. |
end | Number | Es el número más alto que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Number Not Equal To(number)
Establece los criterios de filtro para mostrar las celdas con un número que no sea igual al número especificado.
Puedes usar este criterio con cualquier tipo de filtro. Si usas este criterio con datos conectados a una base de datos, el tipo de datos de la columna por la que filtras debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna por la que filtras no necesita ser un número, pero, si no lo es, es posible que obtengas resultados inesperados.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that hides cells that are equal to 25 and sets it to column // B. const criteria = SpreadsheetApp.newFilterCriteria().whenNumberNotEqualTo(25).build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
number | Number | Es el número que se ocultará. |
Volver
Filter: Este compilador, para encadenar.
when Number Not Equal To Any(numbers)
Establece los criterios de filtro para mostrar las celdas con un número que no sea igual a ninguno de los números especificados.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "amount" column that hides cells with the number 10, 20, // or 30. const criteria = SpreadsheetApp.newFilterCriteria() .whenNumberNotEqualToAny([10, 20, 30]) .build(); dataSheet.addFilter('amount', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
numbers | Number[] | Son los números que se ocultarán. |
Volver
Filter: Este compilador, para encadenar.
when Text Contains(text)
Establece los criterios de filtro para mostrar las celdas con texto que contengan el texto especificado. El texto no distingue mayúsculas de minúsculas.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells that contain "Northwest" and sets it to // column B. const criteria = SpreadsheetApp.newFilterCriteria().whenTextContains('Northwest').build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Es el texto que debe contener la celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Does Not Contain(text)
Establece los criterios de filtro para mostrar las celdas con texto que no contiene el texto especificado. El texto no distingue mayúsculas de minúsculas.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that hides cells that contain "Northwest" and sets it to // column B. const criteria = SpreadsheetApp.newFilterCriteria() .whenTextDoesNotContain('Northwest') .build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Texto que no debe contener la celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Ends With(text)
Establece los criterios del filtro para mostrar las celdas con texto que termina con el texto especificado. El texto no distingue mayúsculas de minúsculas.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells with text that ends with "est" and sets it // to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenTextEndsWith('est').build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Es el texto que debe contener el final del texto de la celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Equal To(text)
Establece los criterios del filtro para mostrar las celdas con texto que sea igual al texto especificado. El texto no distingue mayúsculas de minúsculas.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells with text that equals "hello" and sets it // to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenTextEqualTo('hello').build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Es el texto que debe ser igual al texto de la celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Equal To Any(texts)
Establece los criterios de filtro para mostrar las celdas con texto que sea igual a cualquiera de los valores de texto especificados. El texto no distingue mayúsculas de minúsculas.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "category" column that shows cells with the text "tech" // or "business." const criteria = SpreadsheetApp.newFilterCriteria() .whenTextEqualToAny(['tech', 'business']) .build(); dataSheet.addFilter('category', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
texts | String[] | Son los valores de texto que debe tener una celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Not Equal To(text)
Establece los criterios del filtro para mostrar las celdas con texto que no sea igual al texto especificado. El texto no distingue mayúsculas de minúsculas.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "category" column that hides cells with text equal to // "tech." const criteria = SpreadsheetApp.newFilterCriteria().whenTextNotEqualTo('tech').build(); dataSheet.addFilter('category', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Texto que no puede ser igual al texto de la celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Not Equal To Any(texts)
Establece los criterios de filtro para mostrar las celdas con texto que no sea igual a ninguno de los valores especificados. El texto no distingue mayúsculas de minúsculas.
Solo puedes usar este criterio con datos conectados a una base de datos. Por ejemplo, usa este criterio con filtros en una hoja de Data, una hoja conectada a una base de datos o una Data, una tabla dinámica creada a partir de una hoja de Data.
// Gets the sheet that's connected to a database. const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data Sheet'); const dataSheet = ss.asDataSourceSheet(); // Adds criteria to the "category" column that hides cells with the text "tech" // or "business." const criteria = SpreadsheetApp.newFilterCriteria() .whenTextNotEqualToAny(['tech', 'business']) .build(); dataSheet.addFilter('category', criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
texts | String[] | Son los valores de texto que no pueden ser iguales a una celda. |
Volver
Filter: Este compilador, para encadenar.
when Text Starts With(text)
Establece los criterios de filtro para mostrar las celdas con texto que comienza con el texto especificado. El texto no distingue mayúsculas de minúsculas.
Puedes usar este criterio con cualquier tipo de filtro.
// Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Creates criteria that shows cells with text that starts with "pre" and sets // it to column B. const criteria = SpreadsheetApp.newFilterCriteria().whenTextStartsWith('pre').build(); filter.setColumnFilterCriteria(2, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
text | String | Texto que debe contener el inicio del texto de la celda. |
Volver
Filter: Este compilador, para encadenar.
with Criteria(criteria, args)
Establece los criterios de filtro en una condición booleana definida por valores de Boolean, como CELL_EMPTY o NUMBER_GREATER_THAN. Para copiar la condición booleana de los criterios existentes, define los parámetros para este método con get y get en un criterio existente.
Puedes usar este criterio con cualquier tipo de filtro, pero algunos Boolean no son aplicables a todos los filtros.
// Builds a filter criteria that is based on existing boolean conditions from // another criteria. Gets the existing filter on the sheet. const ss = SpreadsheetApp.getActiveSheet(); const filter = ss.getFilter(); // Gets the existing boolean conditions applied to Column B and adds criteria to // column C that has the same boolean conditions and additional criteria that // hides the value, "Northwest." const filterCriteria = filter.getColumnFilterCriteria(2); const criteria = SpreadsheetApp.newFilterCriteria() .withCriteria( filterCriteria.getCriteriaType(), filterCriteria.getCriteriaValues(), ) .setHiddenValues(['Northwest']) .build(); filter.setColumnFilterCriteria(3, criteria);
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
criteria | Boolean | Es el tipo de criterios booleanos. |
args | Object[] | Es un array de argumentos adecuados para el tipo de criterio. La cantidad de argumentos y su tipo coinciden con los métodos when...() correspondientes que se mencionaron anteriormente. |
Volver
Filter: Este compilador, para encadenar.