¿BUSCARX devuelve 0? Devuelve el espacio en blanco en su lugar – Excel
Descargar el Libro de Ejemplo
Este tutorial demostrará cómo devolver el espacio en blanco en lugar de cero cuando se utiliza la función BUSCARX. Si su versión de Excel no soporta BUSCARX, lea cómo usar BUSCARV en su lugar.
En Excel, cuando se hace referencia a otra celda con una fórmula, los valores en blanco se calculan como cero.
Esto también es cierto cuando se buscan valores con BUSCARV o BUSCARX:
=BUSCARX("2021-D";B3:B7;C3:C7)
Esto puede ser muy problemático en algunos escenarios.
BUSCARX con SI y ESBLANCO
Para devolver un valor en blanco en lugar de cero, podemos añadir las funciones SI y ESBLANCO a una fórmula:
=SI(ESBLANCO(BUSCARX(E3;B3:B7;C3:C7));"";BUSCARX(E3;B3:B7;C3:C7))
Repasemos la fórmula:
Función BUSCARX
Primero tenemos nuestra función BUSCARX original:
=BUSCARX("2021-D",B3:B7,C3:C7)
Función ESBLANCO
A continuación, podemos utilizar ESBLANCO para comprobar si el resultado de la función BUSCARX está en blanco.
=ESBLANCO(BUSCARX(E3;B3:B7;C3:C7))
Notas:
- La función ESBLANCO devuelve VERDADERO si un valor está en blanco. La cadena vacía («») y el 0 no son equivalentes a un espacio en blanco. Una celda que contiene una fórmula no está en blanco, y por eso no podemos usar F3 como entrada para el ESBLANCO.
- Las fórmulas pueden devolver espacios en blanco, pero se convierten en cero en la fase final del cálculo.
- Por lo tanto, podemos anidar las fórmulas en el ESBLANCO para comprobar si sus resultados están en blanco en lugar de asignar las fórmulas a las celdas antes de aplicar el ESBLANCO a las celdas.
Función SI
Podemos utilizar la función SI para comprobar si la combinación de ESBLANCO y BUSCARX es VERDADERO o FALSO. Podemos establecer cualquier proceso (por ejemplo, la salida de una cadena vacía) si la condición es VERDADERO y otro (por ejemplo, el resultado del BUSCARX si no está en blanco) si el resultado es FALSO.
=SI(G3;"";F3)
Combinando todos estos conceptos se obtiene nuestra fórmula original
=SI(ESBLANCO(BUSCARX(E3;B3:B7;C3:C7));"";BUSCARX(E3;B3:B7;C3:C7))
BUSCARX con SI y cadena vacía («»)
Podemos utilizar la cadena vacía como criterio para comprobar si el valor del BUSCARX está en blanco en lugar de utilizar la función ESBLANCO:
=SI(BUSCARX(E3;B3:B7;C3:C7)="";"";BUSCARX(E3;B3:B7;C3:C7))
Nota: El espacio en blanco puede ser equivalente a un cero o a una cadena vacía dependiendo del cálculo, pero las cadenas vacías y los 0 no son espacios en blanco.
BUSCARX con SI y LARGO
Otra alternativa a ESBLANCO es el uso de la función LARGO:
=SI(LARGO(BUSCARX(E3;B3:B7;C3:C7))=0;"";BUSCARX(E3;B3:B7;C3:C7))
Profundicemos en esta solución alternativa:
Comprobar si está en blanco usando LARGO
Podemos utilizar la función LARGO para contar el número de caracteres de la salida del BUSCARX:
=LARGO(BUSCARX(E3;B3:B7;C3:C7))
Si el número de caracteres es 0, significa que el valor está en blanco. Podemos entonces utilizar la función SI para comprobar si la función LARGO es igual a 0, y devolver una cadena vacía si esto es cierto:
=SI(G3=0;"";F3)
Combinando todos estos conceptos se obtiene nuestra fórmula original
=SI(LARGO(BUSCARX(E3;B3:B7;C3:C7))=0;"";BUSCARX(E3;B3:B7;C3:C7))
Tenga en cuenta que las fórmulas anteriores sólo son aplicables si la salida está en blanco, lo que es diferente de un resultado «sin coincidencias». Si BUSCARX no encuentra una coincidencia, devolverá el Error #N/D en su lugar, y en este caso, necesitamos manejar el Error #N/D; por favor vea el artículo: «BUSCARX – Arreglar el error #ND»