martes, 28 de febrero de 2017

Descubrir Errores en las Secuencias en Excel

Un lector consultaba por la manera de localizar errores o discontinuidades en una secuencia de números en Excel:
[...]Alguna formula para checar la secuencia nuúmerica ??
y que arroje un " correcto" o " incorrecto" según la condición 

Ejm. ( 6061, 6062, 6063, 6064, 7021, 6065, 6066) que me marque el error en la secuencia que en este caso sería el "7021")[...]


Este sería el objetivo a conseguir:

Descubrir Errores en las Secuencias en Excel



El inicio del trabajo es fácil, asociamos al primer valor de la secuencia, en el ejemplo en la celda B2 el valor fijo: correcto.
Importante porque a partir de este dato se construirá la fórmula que necesitamos.

En B3 insertamos la matricial:
=SI(B2="correcto";SI(A3=A2+1;"correcto";"incorrecto");SI(A3=MAX(SI($B$2:B2="correcto";$A$2:A2))+1;"correcto";"incorrecto"))
(recuerda ejecutarla presionando Ctrl+Mayusc+Enter).
Una vez validada puedes copiar esta fórmula y pegarla al resto de celdas B4:B11.


Como se observa, tenemos una serie de condicionales anidados, que nos permiten descubrir saltos en la secuencia, e incorrecciones siguientes... tal como preguntaba el lector.

El primer condicional exige que el valor anterior sea 'correcto':
SI(B2="correcto"
si fuera así verificamos con el segundo SI si el valor a analizar es el siguiente en la secuencia:
SI(A3=A2+1;"correcto";"incorrecto")
Si fuera el caso, y el anterior dato no fuera 'correcto', esto es, no siguiera la secuencia, evaluamos una nueva condición para localizar el último dato 'correcto':
SI(A3=MAX(SI($B$2:B2="correcto";$A$2:A2))+1;"correcto";"incorrecto")
que deberá corresponderá al mayor (al Máximo) de los anteriores...si el dato actual es el siguiente a éste, será correcto.


Tenemos entonces la solución buscada.
para ello hemos empleado la siempre útil función SI, apoyada por un uso matricial.

No hay comentarios:

Publicar un comentario