Cómo extraer números de un texto en Excel

Trabajar con datos mixtos en Excel puede ser bastante tedioso, sobre todo si intentas extraer solo los números o el texto. A veces, parece que Excel no tiene una función integrada lo suficientemente inteligente para esto, así que terminas usando fórmulas o herramientas. Esta guía te ofrece algunas soluciones prácticas. Dependiendo del patrón de tus datos, alguna podría funcionar. Y sí, prepárate para un poco de ensayo y error: Excel puede ser un poco quisquilloso con los patrones. Pero una vez que lo entiendas, obtendrás datos limpios y separados sin tener que copiar y pegar todo manualmente.

Cómo separar números de texto en Excel

Básicamente, no hay un botón de un solo clic para esto, pero estos métodos son increíblemente útiles: – Relleno rápido (si el patrón es consistente) – Texto a columnas (si hay un delimitador) – Fórmulas (para mayor control, especialmente si los datos cambian) – Power Query (si se trabaja con grandes cantidades de datos y se desea automatización)

Todas estas técnicas tienen sus peculiaridades, pero cualquiera que pruebes probablemente te acercará más a datos limpios y utilizables. Aquí tienes un resumen:

Utilice Flash Fill para una separación rápida y sencilla.

Si tus datos siguen el mismo patrón en todas partes y no cambian con frecuencia, Relleno rápido es una salvación. Aprende de un par de ejemplos y rellena automáticamente el resto; es un poco extraño, pero en algunas configuraciones, simplemente funciona. Abre tu hoja de cálculo, inserta una nueva columna junto a tus datos mixtos y en la primera celda, escribe la parte numérica de la primera fila. Por ejemplo, si A2 tiene ABC123, escribe 123 en B2. En B3, comienza a escribir el número esperado (si aún es similar) y Excel debería sugerir el resto. Presiona Intro. Si no se autocompleta, no te preocupes: ve a Datos > Relleno rápido o usa el atajo Ctrl + E; a veces es cuestión de suerte, especialmente si el patrón es inconsistente.

Este método funciona bien cuando los datos son predecibles, pero si tus cadenas de texto son muy dispersas, quizás debas probar otra cosa. Generalmente, acelera considerablemente las tareas repetitivas.

Método: Utilizar la función Texto a columnas con delimitadores

Si tus datos mixtos se ven como Producto-123 o Artículo, 456, y están separados claramente por delimitadores como guiones, comas o guiones bajos, esta es la solución. Ve a Datos > Texto en columnas después de seleccionar las celdas. Elige Delimitado, haz clic en Siguiente y luego verifica qué delimitador usan tus datos, como Guion o Coma. Haz clic en Siguiente de nuevo, elige el destino y luego en Finalizar.¡Listo! Los datos se dividen. Ten en cuenta que esto funciona mejor cuando tus datos tienen un formato consistente con el mismo delimitador en todas partes. De lo contrario, podrías obtener divisiones inconsistentes.

Fórmulas: La forma flexible de extraer números o texto

Si tus datos son un poco más complejos (por ejemplo, si los números pueden estar *en cualquier parte*), las fórmulas son tu mejor opción. Por ejemplo, si tu cadena es Product123 o 123ABC y solo necesitas la parte numérica, las fórmulas que aparecen a continuación te serán muy útiles. Pero prepárate para algo de magia: la sintaxis de las fórmulas de Excel puede ser un poco extraña, sobre todo con las distintas versiones.

Para obtener la parte numérica de cadenas como Product123, puedes probar lo siguiente:

=RIGHT(A2, LEN(A2)-MIN(FIND({0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, A2&"0123456789"))+1)

Esto intenta encontrar dónde está el primer dígito y extrae todo lo que le sigue. Por otro lado, para obtener solo la parte del texto, podrías usar:

=LEFT(A2, MIN(FIND({0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, A2&"0123456789"))-1)

Para casos más complejos donde los números aparecen en cualquier parte de la cadena, la siguiente fórmula de matriz (funciona en Excel 365 o Excel 2021) puede ser la solución:

=TEXTJOIN("", TRUE, IFERROR(MID(A2, SEQUENCE(LEN(A2)), 1)*1, ""))

Otra opción si todavía usas versiones antiguas de Excel es:

=TEXTJOIN("", TRUE, IFERROR(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)*1, ""))

Arrastra estas fórmulas hacia abajo y extraerán los números automáticamente, lo cual resulta muy práctico si los datos cambian con frecuencia.

Power Query para grandes conjuntos de datos o tareas repetitivas

Power Query es la herramienta más potente en este caso: si trabajas con muchos datos o necesitas realizar esta operación con frecuencia, es la más robusta. Simplemente selecciona tus datos, ve a Datos > Desde tabla/rango y conviértelos en una tabla. En Power Query, elige tu columna y luego agrega una columna personalizada con esta fórmula:

Text. Select([YourColumn], {"0".."9"})

Eso solo captura los dígitos. Para extraer el texto, puedes probar lo siguiente:

Text. Remove([YourColumn], {"0".."9"})

Una vez que esté satisfecho con el resultado, haga clic en Cerrar y cargar, y los datos limpios se cargarán de nuevo en Excel.¿Lo mejor? Puede actualizarlo si sus datos de origen se actualizan. Funciona especialmente bien con grandes cantidades de datos, sin necesidad de copiar y pegar manualmente.

En resumen, ¿cuál es la mejor manera?

Si esto te parece excesivo o simplemente necesitas una solución rápida, Flash Fill o Text to Columns te servirán. Las fórmulas ofrecen mayor control, sobre todo si los datos son dinámicos. Power Query es para casos más complejos, donde la automatización y la repetibilidad son fundamentales. A veces, se requiere un poco de ensayo y error, pero obtener números precisos a partir de cadenas mixtas no es imposible; solo depende de la coherencia del patrón.