Búsqueda en hoja de excel con fórmula

=SI(EQ3=1;FILA())

Con esta fórmula he logrado que excel donde haya un 1 me lo de como verdadero o falso

Por ejemplo en en EQ3 hay un uno me marca el el 3 en la fórmula como que si efectivamente ahí hay un un 1, pero esto lo tengo que hacer en una columna larga y quiero que me ordene los valores y me los ponga por orden es decir al principio de la columna los que efectivamente tengan un 1, y me estoy poniendo loco por que he probado diversas fórmula, k.esimo.menor... Indices, sin lograr el resultado que quiero.

2 respuestas

Respuesta
1

Lo que tu necesitas es un macro, te paso unos ejemplos para ordenar datos y otro para recorrer las filas en busca de lo que requieres

https://youtu.be/bDNE-MWb1q4

https://youtu.be/3LCDc_oxDGU

https://youtu.be/HqQRYceEx84

https://youtu.be/yFNlSsYZZF0

Respuesta
1

¿Qué valores quieres que te devuelva? ¿El número de la fila? ¿Todos los "1" seguidos a partir del primero que encuentre?

Pues solo quiero saber en que celda están los 1, o sea coordenada

Ejemplo

En EQ500 hay 1 pues que me lleve directo ahí, solo eso, o a cualquier 1 que haya, si me marca en una celda a parte el numero de celda donde esta ya eso es padrisimo...

A ver si esto te ayuda:

Crea una columna de números consecutivos que llegue desde el primero al último de tus registros.

Yo la he situado en la columna EP3, pero puedes ponerla fuera de tus datos.

En ER3 escribe  =SI(EQ3=1;FILA();"")

y en ES3   =SI.ERROR(K.ESIMO.MENOR($ER$3:$ER$27;$EP3);"")

Esto te dará la lista ordenada de menor a mayor del número de cada fila que tengan el "1" .Mi rango llega hasta $ER$27, cambialo por el tuyo $ER$600, por ejemplo.

He intentado aplicar tu fórmula pero no me da lo que se supone debe dar o sea no me marca nada aunque en EQ hayan 1, solo me marca si hay un 1 en EQ3.

¡Gracias! 

La fórmula debes copiarla hacia abajo, hasta el último registro de tus datos.

Tengo otro problema, mira la fórmula

En ER3 escribe  =SI(EQ3=1;FILA();"")

yo la hice asi =SI(EQ3=1;FILA();"") en et y efectivamente funciona

=SI.ERROR(K.ESIMO.MENOR($ER$3:$ER$27;$EP3);"")

=SI.ERROR(K.ESIMO.MENOR($ET$3:$ET$150290;$ES$3);"")

pero no me ordenada nada asi, tengo que copiarla hacia abajo?¿

=SI.ERROR(K.ESIMO.MENOR($ET$3:$ET$150290;$ES$3:$ES$150290);"")

De esta forma la copie hacia abajo y hace el cometido pero cuando la uso en la columna completa es tan lenta que la hoja se hace intocable.

Efectivamente. Para tal cantidad de registros cualquier fórmula haría lentísima la hoja. Te recomiendo volver a plantear la consulta en el foro y solicitar una macro que te haga el proceso. Siento no haber interpretado correctamente la consulta. Suerte y un saludo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas