Class FilterCriteriaBuilder

FilterCriteriaBuilder

Para agregar criterios a un filtro, debes hacer lo siguiente:

  1. Crea el creador de criterios con SpreadsheetApp.newFilterCriteria().
  2. Agrega configuraciones al compilador con los métodos de esta clase.
  3. Usa build() para combinar los criterios con la configuración especificada.

Usos comunes

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 contiene "hello" o "mundo". Los criterios de esta muestra solo pueden usarse con filtros en hojas de Grid, el tipo de hoja predeterminado.
let ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setHiddenValues(["hello", "world"])
                             .build();
filter.setColumnFilterCriteria(3, criteria);

Mostrar solo celdas que no estén vacías

En el siguiente ejemplo, se agrega un filtro a una hoja DataSource, una hoja que se conectadas a una base de datos, con criterios que solo muestran celdas en la "Categoría" columna que no están vacías.
// Gets the sheet named "Connected sheet," which is connected to a database.
let sheet = SpreadsheetApp.getActiveSpreadsheet()
                          .getSheetByName("Connected sheet")
                          .asDataSourceSheet();
// Creates criteria that only shows non-empty cells.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellNotEmpty()
                             .build();
// Applies the criteria to the column named "Category."
sheet.addFilter("Category", criteria);

Métodos

MétodoTipo de datos que se muestraDescripción breve
build()FilterCriteriaEnsambla los criterios del filtro con la configuración que agregas al creador de criterios.
copy()FilterCriteriaBuilderCopia estos criterios de filtro y crea un compilador de criterios que puedes aplicar a otro. filtro.
getCriteriaType()BooleanCriteriaMuestra 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()ColorMuestra el color de fondo utilizado como criterio de filtro.
getVisibleForegroundColor()ColorMuestra el color de primer plano que se usa como criterio de filtro.
getVisibleValues()String[]Muestra los valores que muestra el filtro de tabla dinámica.
setHiddenValues(values)FilterCriteriaBuilderConfigura los valores que se ocultarán.
setVisibleBackgroundColor(visibleBackgroundColor)FilterCriteriaBuilderEstablece el color de fondo que se usa como criterio de filtro.
setVisibleForegroundColor(visibleForegroundColor)FilterCriteriaBuilderEstablece el color de primer plano que se usa como criterio de filtro.
setVisibleValues(values)FilterCriteriaBuilderEstablece los valores que se mostrarán en una tabla dinámica.
whenCellEmpty()FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas vacías.
whenCellNotEmpty()FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas que no están vacías.
whenDateAfter(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas posteriores a la fecha especificada.
whenDateAfter(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas posteriores a la fecha relativa especificada.
whenDateBefore(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas anteriores a la fecha especificada.
whenDateBefore(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas anteriores a la fecha relativa especificada.
whenDateEqualTo(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas iguales a la fecha especificada.
whenDateEqualTo(date)FilterCriteriaBuilderEstablece criterios de filtro que muestran celdas con fechas iguales a la fecha relativa especificada.
whenDateEqualToAny(dates)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con fechas que sean iguales a cualquiera de las fechas especificadas.
whenDateNotEqualTo(date)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas que no sean iguales a la fecha especificada.
whenDateNotEqualToAny(dates)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con fechas que no sean iguales a ninguna de las especificadas fechas.
whenFormulaSatisfied(formula)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con una fórmula especificada (como =B:B<C:C) que se evalúa como true.
whenNumberBetween(start, end)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número que se encuentre entre 2 o sea cualquiera de ellos. un número específico.
whenNumberEqualTo(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con un número igual al número especificado.
whenNumberEqualToAny(numbers)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número igual a cualquiera de los valores especificados. y números de serie.
whenNumberGreaterThan(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número superior al número especificado.
whenNumberGreaterThanOrEqualTo(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número superior o igual al especificado. de la fila.
whenNumberLessThan(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número inferior al número especificado.
whenNumberLessThanOrEqualTo(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número inferior o igual al especificado. de la fila.
whenNumberNotBetween(start, end)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar que las celdas con un número no se ubiquen en el rango y que no sean 2. un número específico.
whenNumberNotEqualTo(number)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con un número que no sea igual al número especificado.
whenNumberNotEqualToAny(numbers)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con un número que no sea igual a ninguno de los valores especificados. y números de serie.
whenTextContains(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto que contenga el texto especificado.
whenTextDoesNotContain(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar las celdas con texto que no contiene el texto especificado.
whenTextEndsWith(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto que termina con el texto especificado.
whenTextEqualTo(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto igual al texto especificado.
whenTextEqualToAny(texts)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto igual a cualquiera del texto especificado. de salida.
whenTextNotEqualTo(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto que no sea igual al texto especificado.
whenTextNotEqualToAny(texts)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto que no sea igual a ninguno de los valores especificados. de salida.
whenTextStartsWith(text)FilterCriteriaBuilderEstablece los criterios de filtro para mostrar celdas con texto que comience con el texto especificado.
withCriteria(criteria, args)FilterCriteriaBuilderEstablece los criterios de filtro en una condición booleana definida por valores BooleanCriteria, como como CELL_EMPTY o NUMBER_GREATER_THAN.

Documentación detallada

build()

Ensambla los criterios del filtro con la configuración que agregas al creador de criterios.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
let criteria = SpreadsheetApp.newFilterCriteria() // Creates a criteria builder.
                             .whenCellNotEmpty() // Adds settings to the builder.
                             .build();          // Assembles the criteria.
filter.setColumnFilterCriteria(2, criteria);

Volver

FilterCriteria: Es una representación de los criterios del 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 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.

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 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étodo when...() correspondiente de la clase FilterCriteriaBuilder.


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 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 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.


setHiddenValues(values)

Configura los valores que se ocultarán. Borra todos los valores ocultos o visibles existentes.

Solo puedes usar este criterio para los filtros de Grid hojas, la opción predeterminada tipo de hoja.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets the values to hide and applies the criteria to column C.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setHiddenValues(["Hello", "World"])
                             .build();
filter.setColumnFilterCriteria(3, criteria);

Parámetros

NombreTipoDescripción
valuesString[]La lista de valores que se ocultarán.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,

Arroja

Error: Si alguno de los valores es null.


setVisibleBackgroundColor(visibleBackgroundColor)

Establece el color de fondo que se usa como criterio de filtro. Las celdas con este color de fondo permanecen sean visibles. Si estableces un criterio de filtro de color de fondo, se quitará cualquier criterio de filtro de color actual. de este compilador.

Solo puedes usar este criterio para los filtros de Grid hojas, la opción predeterminada tipo de hoja.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that filters by background color and sets it to column B.
let color = SpreadsheetApp.newColor().setRgbColor("#185ABC").build();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleBackgroundColor(color)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
visibleBackgroundColorColorEl color de fondo que se establecerá. El color debe ser del estilo RGB color. Este método no admite colores de tema.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


setVisibleForegroundColor(visibleForegroundColor)

Establece el color de primer plano que se usa como criterio de filtro. Las celdas con este color de primer plano permanecen sean visibles. Si estableces 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 de Grid hojas, la opción predeterminada tipo de hoja.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that filters by foreground color and sets it to column B.
let color = SpreadsheetApp.newColor().setRgbColor("#185ABC").build();
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleForegroundColor(color)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
visibleForegroundColorColorColor de primer plano que se establecerá. El color debe ser del estilo RGB color. Este método no admite colores de tema.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


setVisibleValues(values)

Establece los valores que se mostrarán en una tabla dinámica. Borra todos los valores ocultos o visibles existentes.

Solo puedes utilizar este criterio para los filtros de las tablas dinámicas que no están conectadas a un en la 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."
let pivotTable = ss.getPivotTables()[0];
let criteria = SpreadsheetApp.newFilterCriteria()
                             .setVisibleValues(["Northeast", "Southwest"])
                             .build();
pivotTable.addFilter(2, criteria);

Parámetros

NombreTipoDescripción
valuesString[]Es la lista de valores que se mostrarán.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,

Arroja

Error: Si alguno de los valores es null.


whenCellEmpty()

Establece los criterios de filtro para mostrar las celdas vacías.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets criteria to column B that only shows empty cells.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellEmpty()
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenCellNotEmpty()

Establece los criterios de filtro para mostrar las celdas que no están vacías.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Sets criteria to column B that only shows cells that aren't empty.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenCellNotEmpty()
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateAfter(date)

Establece criterios de filtro que muestran celdas con fechas posteriores a la fecha especificada.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates after June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateAfter(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateDateLa fecha más reciente que se debe ocultar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateAfter(date)

Establece criterios de filtro que muestran celdas con fechas posteriores a la fecha relativa especificada. Para Para ver las opciones de fecha relativas, consulta Enum RelativeDate.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates after today's date
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.TODAY;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateAfter(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateRelativeDateEs la fecha relativa más reciente.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateBefore(date)

Establece criterios de filtro que muestran celdas con fechas anteriores a la fecha especificada.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates before June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateBefore(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateDateLa fecha más temprana que se debe ocultar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateBefore(date)

Establece criterios de filtro que muestran celdas con fechas anteriores a la fecha relativa especificada. Para ver las opciones de fechas relativas, consulta Enum RelativeDate.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates before today's date
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.TODAY;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateBefore(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateRelativeDateLa fecha relativa más antigua que se ocultará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateEqualTo(date)

Establece criterios de filtro que muestran celdas con fechas iguales a la fecha especificada.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates equal to June 1, 2022
// and sets it to column A.
let date = new Date("June 1, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualTo(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateDateFecha en la que deben coincidir los valores de las celdas.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateEqualTo(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 RelativeDate.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser una fecha. Si el botón datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser una fecha, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the range.
const ss = SpreadsheetApp.getActiveSheet();
let range = ss.getRange("A1:C20");
let filter = range.getFilter();
// Creates criteria that only shows cells with dates that fall within the past month
// and sets it to column A.
let date = SpreadsheetApp.RelativeDate.PAST_MONTH;
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualTo(date)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
dateRelativeDateFecha relativa con la que deben coincidir los valores de celda.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateEqualToAny(dates)

Establece los criterios de filtro para mostrar celdas con fechas que sean iguales a cualquiera de las fechas especificadas.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "date" column that shows cells with any of the below dates.
let date1 = new Date("June 1, 2022");
let date2 = new Date("June 2, 2022");
let date3 = new Date("June 3, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateEqualToAny([date1, date2, date3])
                             .build();
dataSheet.addFilter("date", criteria);

Parámetros

NombreTipoDescripción
datesDate[]Son las fechas que se mostrarán.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateNotEqualTo(date)

Establece los criterios de filtro para mostrar celdas que no sean iguales a la fecha especificada.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

El tipo de datos de la columna que filtras debe ser una fecha.

// Gets a pivot table that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Pivot Table Sheet");
let dataPivotTable = ss.getDataSourcePivotTables()[0];
// Creates criteria that only shows cells that don't equal June 16, 2022
// and sets it to the "date" column.
let date = new Date("June 16, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateNotEqualTo(date)
                             .build();
dataPivotTable.addFilter("date", criteria);

Parámetros

NombreTipoDescripción
dateDateLa fecha que se debe ocultar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenDateNotEqualToAny(dates)

Establece los criterios de filtro para mostrar celdas con fechas que no sean iguales a ninguna de las especificadas fechas.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "date" column that hides cells with any of the below dates.
let date1 = new Date("June 1, 2022");
let date2 = new Date("June 2, 2022");
let date3 = new Date("June 3, 2022");
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenDateNotEqualToAny([date1, date2, date3])
                             .build();
dataSheet.addFilter("date", criteria);

Parámetros

NombreTipoDescripción
datesDate[]Las fechas que se deben ocultar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenFormulaSatisfied(formula)

Establece los criterios de filtro para mostrar celdas con una fórmula especificada (como =B:B<C:C) que se evalúa como true.

Solo puedes usar estos criterios para filtrar datos que no estén conectados a una base de datos.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let 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.
let formula = "=B:B<C:C";
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenFormulaSatisfied(formula)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
formulaStringEs una fórmula personalizada que se evalúa como true si la entrada es válida.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberBetween(start, end)

Establece los criterios de filtro para mostrar las celdas con un número que se encuentre entre 2 o sea cualquiera de ellos. un número específico.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that only shows cells with numbers that fall between 1-25, inclusively,
// and sets it to column A.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberBetween(1, 25)
                             .build();
filter.setColumnFilterCriteria(1, criteria);

Parámetros

NombreTipoDescripción
startNumberEs el número más bajo que se mostrará.
endNumberEl número más alto que se mostrará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberEqualTo(number)

Establece los criterios de filtro para mostrar celdas con un número igual al número especificado.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that only shows cells that are equal to 25 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberEqualTo(25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberNúmero que se mostrará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberEqualToAny(numbers)

Establece los criterios de filtro para mostrar las celdas con un número igual a cualquiera de los valores especificados. y números de serie.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "amount" column that only shows cells with the number 10, 20, or 30.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberEqualToAny([10,20,30])
                             .build();
dataSheet.addFilter("amount", criteria);

Parámetros

NombreTipoDescripción
numbersNumber[]Los números que se mostrarán.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberGreaterThan(number)

Establece los criterios de filtro para mostrar las celdas con un número superior al número especificado.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells greater than 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberGreaterThan(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberEl número más alto que se ocultará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberGreaterThanOrEqualTo(number)

Establece los criterios de filtro para mostrar las celdas con un número superior o igual al especificado. de la fila.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells greater than or equal to 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberGreaterThanOrEqualTo(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberEs el número más bajo que se mostrará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberLessThan(number)

Establece los criterios de filtro para mostrar las celdas con un número inferior al número especificado.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells less than 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberLessThan(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberEl número más bajo que se ocultará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberLessThanOrEqualTo(number)

Establece los criterios de filtro para mostrar las celdas con un número inferior o igual al especificado. de la fila.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells less than or equal to 10 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberLessThanOrEqualTo(10)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberEl número más alto que se mostrará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberNotBetween(start, end)

Establece los criterios de filtro para mostrar que las celdas con un número no se ubiquen en el rango y que no sean 2. un número específico.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells with numbers that fall between 1-25, inclusively,
// and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotBetween(1, 25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
startNumberSe oculta el número más bajo.
endNumberEl número más alto que se ocultará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberNotEqualTo(number)

Establece los criterios de filtro para mostrar celdas con un número que no sea igual al número especificado.

Puedes usar estos criterios con cualquier tipo de filtro. Si usas este criterio con datos conectado a una base de datos, el tipo de datos de la columna que estás filtrando debe ser un número. Si los datos no están conectados a una base de datos, el tipo de datos de la columna que filtras no debe ser un número, pero si no lo es, podrías obtener resultados inesperados.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells that are equal to 25 and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotEqualTo(25)
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
numberNumberNúmero que se ocultará.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenNumberNotEqualToAny(numbers)

Establece los criterios de filtro para mostrar las celdas con un número que no sea igual a ninguno de los valores especificados. y números de serie.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "amount" column that hides cells with the number 10, 20, or 30.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenNumberNotEqualToAny([10,20,30])
                             .build();
dataSheet.addFilter("amount", criteria);

Parámetros

NombreTipoDescripción
numbersNumber[]Los números que se ocultarán.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextContains(text)

Establece los criterios de filtro para mostrar celdas con texto que contenga el texto especificado. El texto no distingue mayúsculas de minúsculas.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells that contain "Northwest" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextContains("Northwest")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
textStringTexto que debe contener la celda

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextDoesNotContain(text)

Establece los criterios de filtro para mostrar las celdas con texto que no contiene el texto especificado. El el texto no distingue mayúsculas de minúsculas.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that hides cells that contain "Northwest" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextDoesNotContain("Northwest")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
textStringTexto que no debe contener la celda

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextEndsWith(text)

Establece los criterios de filtro para mostrar celdas con texto que termina con el texto especificado. El texto no distingue mayúsculas de minúsculas.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that ends with "est" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEndsWith("est")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
textStringTexto que debe contener el final del texto de la celda

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextEqualTo(text)

Establece los criterios de filtro para mostrar celdas con texto igual al texto especificado. El texto no distingue mayúsculas de minúsculas.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that equals "hello" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEqualTo("hello")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
textStringIndica el texto al que debe coincidir el texto de la celda.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextEqualToAny(texts)

Establece los criterios de filtro para mostrar celdas con texto igual a cualquiera del texto especificado. de salida. El texto no distingue mayúsculas de minúsculas.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that shows cells with the text "tech" or "business."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextEqualToAny(["tech","business"])
                             .build();
dataSheet.addFilter("category", criteria);

Parámetros

NombreTipoDescripción
textsString[]Son los valores de texto a los que debe ser igual una celda.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextNotEqualTo(text)

Establece los criterios de filtro para mostrar celdas con texto que no sea igual al texto especificado. El el texto no distingue mayúsculas de minúsculas.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that hides cells with text equal to "tech."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextNotEqualTo("tech")
                             .build();
dataSheet.addFilter("category", criteria);

Parámetros

NombreTipoDescripción
textStringTexto que el texto de la celda no puede igualar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextNotEqualToAny(texts)

Establece los criterios de filtro para mostrar celdas con texto que no sea igual a ninguno de los valores especificados. de salida. El texto no distingue mayúsculas de minúsculas.

Solo puedes usar estos criterios con datos conectados a una base de datos. Por ejemplo, usa este criterios con filtros en una hoja DataSource, una hoja conectada a o DataSourcePivotTable, una tabla dinámica creada a partir de una hoja DataSource.

// Gets the sheet that's connected to a database.
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data Sheet");
let dataSheet = ss.asDataSourceSheet();
// Adds criteria to the "category" column that hides cells with the text "tech" or "business."
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextNotEqualToAny(["tech","business"])
                             .build();
dataSheet.addFilter("category", criteria);

Parámetros

NombreTipoDescripción
textsString[]Valores de texto a los que una celda no puede igualar.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


whenTextStartsWith(text)

Establece los criterios de filtro para mostrar celdas con texto que comience con el texto especificado. El texto no distingue mayúsculas de minúsculas.

Puedes usar estos criterios con cualquier tipo de filtro.

// Gets the existing filter on the sheet.
const ss = SpreadsheetApp.getActiveSheet();
let filter = ss.getFilter();
// Creates criteria that shows cells with text that starts with "pre" and sets it to column B.
let criteria = SpreadsheetApp.newFilterCriteria()
                             .whenTextStartsWith("pre")
                             .build();
filter.setColumnFilterCriteria(2, criteria);

Parámetros

NombreTipoDescripción
textStringTexto que debe contener el comienzo del texto de la celda.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,


withCriteria(criteria, args)

Establece los criterios de filtro en una condición booleana definida por valores BooleanCriteria, como 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 usando getCriteriaType() y getCriteriaValues() en un los criterios existentes.

Puedes usar estos criterios con cualquier tipo de filtro, pero algunos BooleanCriteria no lo son. que se aplicará 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();
let 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."
let filter = ss.getFilter();
let filterCriteria = filter.getColumnFilterCriteria(2);
let criteria = SpreadsheetApp.newFilterCriteria()
    .withCriteria(filterCriteria.getCriteriaType(), filterCriteria.getCriteriaValues())
    .setHiddenValues(["Northwest"])
    .build();
filter.setColumnFilterCriteria(3, criteria);

Parámetros

NombreTipoDescripción
criteriaBooleanCriteriaEs el tipo de criterio booleano.
argsObject[]Un array de argumentos apropiados para el tipo de criterios. la cantidad de argumentos y su tipo coinciden con los métodos when...() correspondientes anteriores.

Volver

FilterCriteriaBuilder: Este compilador, para encadenamiento,