Fórmula para identificar si un código coincide con la base de búsqueda y que de mensaje de no coincidir!

Expertos tengo una fórmula para buscar el nombre asignado a un código de 5 niveles donde el (Nivel 1 son"0", Nivel 2 son"00", Nivel 3 son"0000", Nivel 4 son "00" y Nivel 5 son "000" si coincide me devuelve el nombre asignado al código y si no me debería de dar "Error código". Bueno para que entiendan mejor es así como en la siguiente imagen

Pero si yo ingreso un mal código no me da "Error código" como dice la fórmula me da otros error #N/A como ven en la siguiente imagen

la base de búsqueda la tengo de la siguiente manera

Bien recapitulando quiero que cuando ingrese un código malo me de el mensaje "ERROR CÓDIGO" no #N/A y otra cosita que mientras no ingrese código no me de ningún mensaje en la celda.

2 Respuestas

Respuesta
1

.11/11/16

Buenas noches, Darwing

La función que te resolverá este habitual problema es: ESNOD()

Esta función dá VERDADERO, cuando el resultado de una búsqueda ya sea con COINCIDIR o BUSCARV o BUSCARH.

Entonces tendrías que construir tu fórmula con la siguiente estructura:

=SI(ESNOD(COINCIDIR(TEXTO(A1,...Hoja2! A1:B1, 2,0)),"ERROR CODIGO",COINCIDIR(TEXTO(A1,... Hoja2!A1:B1,2,0))

Desde luego, reemplaza lo que está en negritas por tu fórmula completa.

Nota que está 2 veces: La primera está anidada dentro del ESNOD para que la evalúe.

Si diera #N/A el condicional SI devolverá ERROR CODIGO; si no, traeré el resultado que buscas.

Espero haber sido claro.

Muy buen fin de semana!

Fer

.

Respuesta
1

 H o  l a :

Hay que agregar un si. Error a la fórmula, cuando función Coincidir( ) no encuentra el valor te regresa #N/A. Por lo que veo en tu fórmula, si el dato existe en la hoja2. A1 entonces que te ponga el dato de la celda hoja2. B1, ya no es necesario hacer el BuscarV( ), porque ya realizaste la búsqueda, entonces si existe, simplemente debería tomar el dato de B1.

=SI(O(A1="",B1="",C1="",D1="",E1=""),"",SI.ERROR(SI(COINCIDIR(TEXTO(A1,"0")&"-"&TEXTO(B1,"00")&"-"&TEXTO(C1,"0000")&"-"&TEXTO(D1,"00")&"-"&TEXTO(E1,"000"),Hoja2!A1,0),Hoja2!B1,"Error código"),"Error código"))

La primera condición de la fórmula (O(A1="",B1="",C1="",D1="",E1="") es para verificar si ya pusiste datos, si alguna celda está vacía, entonces que no haga la búsqueda y entonces no te pondrá nada en la celda.


Otra opción es solamente utilizar la función BuscarV( )

=SI(O(A1="",B1="",C1="",D1="",E1=""),"",SI.ERROR(BUSCARV(TEXTO(A1,"0")&"-"&TEXTO(B1,"00")&"-"&TEXTO(C1,"0000")&"-"&TEXTO(D1,"00")&"-"&TEXTO(E1,"000"),Hoja2!A1:B1,2,0),"Error código"))

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas