Cómo hacer una consulta con la hoja de cálculo de Google, que verifica una fecha

11

Tengo un rango que va desde B4:H124. Todas las celdas en la columna B son fechas. Me gustaría recuperar los datos de una fila ( B:H), donde la FECHA es igual al contenido de una celda específica, digamos Q4.

¿Cómo construyo una consulta adecuada?

Hasta ahora, lo que se me ocurrió con esto:

=QUERY(B2:G124; "select * where B = date '2012-02-28'")

Funciona, aunque el formato de las celdas en B es DD / MM / AAAA.

¿Cómo puedo cambiar 2012-02-28a $Q4? Cuando lo intento, aparece el siguiente error:

=QUERY(B2:G124; "select * where B = date '"&Q4&"'")

Invalid query: Invalid date literal [10/02/2012]. Date literals should be of form yyyy-MM-dd.

Cuando miro la celda, el formato es yyyy-mm-dd, pero cuando lo hago doble clic, el formato cambia a DD-MM-YYYY.

¿Qué tengo que hacer?

Además, ¿cómo puedo resumir los valores de la consulta, sin incluir la columna B?

Kenci
fuente

Respuestas:

3

Todavía no pude encontrar el truco para que la celda de fecha real funcione, pero podría evitarlo si no agrega la comilla simple ( ') antes de la fecha en un formato: YYYY-MM-DDen la Q4celda.

Esa comilla simple significa que se analizará como una cadena.

Lipis
fuente
11

Puede formatear la fecha de esta manera:

=QUERY(B2:G124; "select * where B = date '" & text(Q4,"yyyy-MM-dd") & "'")

Para resumir los valores en la columna C, haga esto:

=QUERY(B2:G124; "select sum(C) where B = date '" & text(Q4,"yyyy-MM-dd") & "'")

Sin embargo, no estoy seguro de cómo resumir varias columnas, ¡todavía soy bastante nuevo para esto!

s6mike
fuente
2

Esto debería funcionar:

=QUERY(B2:G124; "select * where B = date '"&text(Q4;"yyyy-MM-dd")&"'")

De todos modos, tuve el mismo problema y finalmente funcionó para mí.

Lo que pasa es que el mensaje te confunde

Invalid query: Invalid date literal [10/02/2012]. Date literals should be of form yyyy-MM-dd.

Esto se debe a que el formato de fecha de su celda Q4 parece ser dd / MM / aaaa. Tengo lo mismo: incluso si esto parece ser dd / MM / aaaa, solo tiene que decirlo como se indica en la segunda línea de mi respuesta aquí arriba.

Andreyko Dan
fuente
1

Ponga la fecha deseada en una nueva celda como Q3en este formato:2/28/2012

Luego en el Q4tipo de celda=YEAR(Q3) & "-" & DEC2OCT(MONTH(Q3), 2) & "-" & DAY(Q3)

Esto obtendrá la fecha de la Q3celda y la convertirá en una cadena en la Q4celda.

Esto es más útil si desea la fecha actual. En lugar de obtener la fecha de Q3su puede usar now()para obtener la fecha de hoy de esta manera:=YEAR(now()) & "-" & DEC2OCT(MONTH(now()), 2) & "-" & DAY(now())

Brad C.
fuente
1

La final debe ser:

=QUERY(B2:G124; "select * where B = date ' "  & text( Q4 ,"yyyy-MM-dd") & "'")

Donde Q4 es una celda con formato de fecha normal donde puede escribir una fecha.

Copie lo anterior en su bloc de notas y amplíe el tamaño de la fuente a lo que se trata.

Es difícil ver el sencillo 'dentro del doble "aquí.

raymond703
fuente
0

También puede calcular la fecha fuera de la cadena y soltar date, por ejemplo

=QUERY(B2:G124; "select * where B = '" & Q4)

Q4 efectivamente se pasa como un número entero, que es lo que QUERY transforma la fecha en segundo plano de todos modos.

Max Ghenis
fuente
0

Usando la función QUERY de Google:

Para sum varias columnas , es importante incluir el labelparámetro al final de la consulta.

=QUERY(B2:G124; "select sum(C) + sum(D) + sum(E) + sum(F) + sum(G) label sum(C) + sum(D) + sum(E) + sum(F) + sum(G) '' ") 

nota: las referencias de columna distinguen entre mayúsculas y minúsculas y se requieren las 2 comillas simples al final de la consulta.

Para agregar una wherecláusula que haga referencia a un valor de fecha de celdas : de la solución s6mikes

=QUERY(B2:G124; "select * where B = date '" & text(Q4,"yyyy-MM-dd") & "') 

Las 2 consultas combinadas ...

=QUERY(B2:G124; "select sum(C) + sum(D) + sum(E) + sum(F) + sum(G) where B = date '" & text(Q4,"yyyy-MM-dd") & "' label sum(C) + sum(D) + sum(E) + sum(F) + sum(G) '' ")
RumbleFish
fuente
-1

Debe cambiar el tipo de datos en su celda de referencia a texto. Y funcionará sin problemas.

telkontar
fuente