sheets query hoja google funcion examples docs calculo filter google-spreadsheet excel-formula flatten

filter - query - Formulario de Hojas de Cálculo de Google para crear un rango de salida único de 1 columna de todos los valores únicos en el rango de "lista irregular"



hoja de calculo google filter (1)

Documento: https://docs.google.com/spreadsheets/d/1N4cGw5eUq_3gCJh1w39qVatX9KV1_Hr-AqRHj_nbckA/edit?usp=sharing

Expectativa de datos

En Current Class!H3 , los datos de la tabla son los datos que se presentan en el menú desplegable.

¡Esta información proviene directamente de Meta!B7:B ...

... que puede provenir de una de las columnas de Students!$J$5:$O ¡La columna está determinada por el valor en la Current Class!B3

Current Expected | Example Data Expect --------------- -------- | ------------ ------ 1) M1, M2, M3, M4 M1 | 1) M1, M2 ---> M1 2) M2 M2 | M2 3) M3 ---> M3 | -------------------------- 4) M4 M4 | 1) T4 M2 5) M5 M5 | 2) M2 ---> T4 6) M4, M5, M6 M6 | 3) TH3 TH3

Como podría determinar, tengo una posible lista de elementos en una sola fila (Esto indica que 1 estudiante tiene múltiples clases en una sala específica, en este caso, el aula de Yale ).

Lo que quiero es separar las listas en elementos individuales y producir un rango de salida de 1 columna de valores únicos.

He intentado usar la función SPLIT() . Aunque eso rompe cada elemento, pero no puedo encontrar una solución para aplanar los resultados a 1 columna solamente. Pero ahora tengo la siguiente fórmula en Meta!B7 ...

=iferror(Sort(Unique(Filter(Students!$J$5:$O, Find($B$6, Students!$J$4:$O$4) > 0 )), 1, true), "") .


Editar: gritos, se olvidó de ordenarlo.

Esto parece funcionar:

=sort(unique(transpose(split(substitute(JOIN(", ",offset(Students!$I$5:$I$91,0,match($B$6,Students!$J$4:$O$4))),",","")," ",TRUE))),1,TRUE)

Eso:

  • Compensaciones para encontrar la referencia de habitación correcta,
  • Une todas las filas en una cadena con "," separando cada valor,
  • Quita todas las comas y divide la cadena en espacios (""),
  • Transpone para obtener una matriz de filas, y luego selecciona las únicas.

¡Interesante desafío!