Todo sobre la función Extrae los Primeros Caracteres de un Texto Condicionalmente en Excel
formula

Introducción

En Microsoft Excel, a menudo nos enfrentamos a la necesidad de manipular cadenas de texto para limpiar datos, generar códigos o simplemente para presentar la información de una manera más concisa. Una tarea común es extraer una porción de un texto, pero solo si cumple con ciertos criterios. La fórmula =SI(LARGO(cadena_texto)>longitud_minima, IZQUIERDA(cadena_texto, num_caracteres), "") es una solución elegante y eficaz para este propósito, permitiendo extraer los primeros caracteres de una celda únicamente si su contenido supera una longitud determinada.

Esta combinación anida tres funciones fundamentales de Excel: SI para la lógica condicional, LARGO para evaluar la longitud del texto, e IZQUIERDA para realizar la extracción. A continuación, desglosaremos su estructura y exploraremos su potencial a través de ejemplos prácticos.

Sintaxis

=SI(LARGO(cadena_texto)>longitud_minima, IZQUIERDA(cadena_texto, num_caracteres), "")

Esta fórmula evalúa una condición (la longitud del texto) y actúa en consecuencia. Si la condición es verdadera, extrae un número específico de caracteres; si es falsa, devuelve una cadena vacía o el valor que definamos.

  • SI(prueba_logica, valor_si_verdadero, valor_si_falso)
    Es la función principal que dirige el flujo. Evalúa la prueba_logica y, dependiendo del resultado, devuelve uno de los otros dos argumentos.
  • LARGO(cadena_texto) > longitud_minima
    Esta es la prueba_logica. La función LARGO cuenta los caracteres en cadena_texto (la celda que queremos evaluar) y el operador > compara ese número con nuestra longitud_minima deseada.
  • IZQUIERDA(cadena_texto, num_caracteres)
    Este es el valor_si_verdadero. Si el texto es más largo que la longitud mínima, la función IZQUIERDA extrae el num_caracteres especificado desde el inicio de la cadena_texto.
  • «»
    Este es el valor_si_falso. Si el texto no cumple la condición de longitud, la fórmula devuelve una cadena de texto vacía. Este valor puede ser modificado para mostrar un mensaje personalizado, como «Dato inválido» o «N/A».

Ejemplos

Ejemplo 1: Generar códigos de producto A partir de una lista de descripciones de productos, queremos generar un código de 4 caracteres, pero solo para aquellas descripciones que tengan más de 10 caracteres para asegurar que no son códigos ya existentes o entradas incompletas.

A B
1 Descripción del Producto Código Generado
2 Monitor Curvo 27 pulgadas Moni
3 Teclado
4 Ratón Inalámbrico Avanzado Rató
5 Webcam HD

La fórmula en la celda B2, que luego se arrastraría hacia abajo, sería:

=SI(LARGO(A2)>10, IZQUIERDA(A2, 4), "")

Resultado: «Moni» para la celda B2, ya que «Monitor Curvo 27 pulgadas» tiene 26 caracteres. La celda B3 queda vacía porque «Teclado» solo tiene 7 caracteres.

Ejemplo 2: Creación de iniciales para empleados Se necesita crear un identificador con las 3 primeras letras del nombre completo de un empleado. Sin embargo, este proceso solo debe aplicarse si el nombre completo tiene al menos 8 caracteres, para evitar procesar entradas vacías o abreviadas. Si no se cumple la condición, se mostrará el mensaje «Revisar».

A B
1 Nombre Completo Identificador
2 Alejandro Gómez Ale
3 Luis Revisar
4 Marta Jiménez López Mar

La fórmula en la celda B2 sería:

=SI(LARGO(A2)>=8, IZQUIERDA(A2, 3), "Revisar")

Resultado: Para «Alejandro Gómez» se extrae «Ale». Para «Luis», que no cumple la longitud mínima, la fórmula devuelve el texto «Revisar», alertando al usuario para que verifique ese dato.

Aplicaciones Prácticas

  • 1Limpieza de Datos: Estandarizar identificadores o SKU (Stock Keeping Unit) extrayendo un prefijo consistente, pero ignorando celdas con datos erróneos o incompletos.
  • 2Generación de Informes: Crear etiquetas o categorías abreviadas para gráficos y tablas dinámicas a partir de descripciones largas, mejorando la legibilidad del informe final.
  • 3Automatización de Tareas: Asignar automáticamente prefijos a números de factura, expedientes o proyectos basándose en la longitud del nombre del cliente o del proyecto.
  • 4Validación de Datos: Utilizar la parte «falsa» de la función SI para marcar campos que no tienen la longitud mínima esperada, facilitando la identificación y corrección de errores.

Observaciones

La flexibilidad de esta fórmula es uno de sus puntos fuertes. Los valores numéricos para longitud_minima y num_caracteres no tienen que ser fijos. Pueden ser referencias a otras celdas, lo que permite crear plantillas dinámicas donde el usuario puede definir estos parámetros en celdas separadas y la fórmula se adaptará automáticamente.

Errores comunes

  • #¿NOMBRE?
    Este error aparece si el nombre de alguna de las funciones está mal escrito (por ejemplo, =SI(LAGO(A1)...) en lugar de LARGO). Revise la ortografía de las funciones.
  • #¡VALOR!
    Ocurre si el argumento num_caracteres de la función IZQUIERDA es un número negativo. En el contexto de esta fórmula es poco probable, pero podría suceder si se hace referencia a una celda con un valor negativo. También puede aparecer si la celda de origen (cadena_texto) ya contiene un error.

Disponibilidad por versión de Excel

Las funciones utilizadas en esta fórmula (SI, LARGO, IZQUIERDA) son funciones de texto y lógicas fundamentales en Excel. Han estado presentes durante mucho tiempo y son compatibles con prácticamente todas las versiones de Excel.

Versión de Excel Compatibilidad
Excel para Microsoft 365
Excel 2021
Excel 2019
Excel 2016
Excel 2013
Excel 2010
Excel 2007
Versiones anteriores

Alternativas

Si bien esta combinación de fórmulas es la más extendida y compatible, los usuarios de versiones más recientes de Excel (Microsoft 365 o Excel 2021) pueden usar la función LET para mejorar la legibilidad y el rendimiento, especialmente si la celda de origen es el resultado de otra fórmula compleja.

  • =LET(texto, A2, SI(LARGO(texto)>10, IZQUIERDA(texto, 4), ""))

    La función LET permite declarar variables. Aquí, asignamos el valor de A2 a la variable texto. Luego, usamos texto en el resto de la fórmula. Esto no cambia el resultado, pero si la referencia a A2 fuera una fórmula más larga, LET evitaría que Excel la calculara múltiples veces, optimizando el rendimiento de la hoja de cálculo.

Ver también...