¿Cómo extraer solo números de una cadena de texto en Excel?
Al trabajar con Excel, podrías encontrarte en situaciones donde necesites extraer números de cadenas de texto. Ya sea que los números estén al principio, al final o incrustados dentro del texto, Excel proporciona varios métodos para lograr esto. Esta guía explorará diversos métodos para manejar diferentes escenarios, incluyendo la extracción de números decimales, números desde posiciones específicas o números desde el inicio o el final de una cadena.
Extraer número desde cualquier posición de una cadena de texto
Extraer solo números decimales de una cadena de texto
Extraer número del final de una cadena de texto
Extraer número del inicio de una cadena de texto
Extraer número desde cualquier posición de una cadena de texto
Para ayudarte a extraer números desde cualquier posición dentro de una cadena de texto, te presentaremos varios métodos prácticos y eficientes.
♦ Extraer número desde cualquier posición de una cadena de texto con fórmulas
Las siguientes fórmulas pueden ayudarte a extraer los números de las cadenas de texto; por favor, sigue estos pasos:
Selecciona una celda en blanco donde deseas mostrar el número extraído, luego escribe cualquiera de las siguientes fórmulas y arrastra la fórmula a otras celdas. Ver captura de pantalla:
● Todas las versiones de Excel:
=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")
● Excel 365 o Excel 2021 y versiones posteriores:
=TEXTJOIN("", TRUE, IFERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1, ""))
♦ Extraer número desde cualquier posición de una cadena de texto con fórmulas
Kutools para Excel ofrece una forma rápida y fácil de extraer números de cadenas de texto sin tener que recordar ninguna fórmula, lo que te ayuda a ahorrar tiempo y optimizar tu flujo de trabajo. Aquí está cómo hacerlo.
- Haz clic en Kutools > Texto > Extraer texto, ver captura de pantalla:
- En el Extraer texto cuadro de diálogo, realiza las siguientes operaciones:
(1.) Selecciona la lista de datos de la que quieres extraer números;
(2.) Elige Extraer el número opción;
(3.) Marca Insertar como fórmula opción según sea necesario;
(4.) Finalmente, haz clic en el botón Aceptar botón.
- En el siguiente cuadro de diálogo, selecciona una celda para mostrar el resultado extraído, ver captura de pantalla:
- Haz clic en Aceptar, todos los números de cada celda se extraen de una vez. Ver captura de pantalla:
♦ Extraer número desde cualquier posición de una cadena de texto con código VBA
Aquí hay un código VBA que también puede ayudarte, por favor sigue estos pasos:
- Mantén presionadas las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
- Haz clic en Insertar > Módulo, y pega el siguiente código en la Módulo Ventana.
Código VBA: Extraer solo números de una cadena de texto:Sub ExtrNumbersFromRange() Dim xRg As Range Dim xDRg As Range Dim xRRg As Range Dim nCellLength As Integer Dim xNumber As Integer Dim strNumber As String Dim xTitleId As String Dim xI As Integer xTitleId = "KutoolsforExcel" Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8) If TypeName(xDRg) = "Nothing" Then Exit Sub Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8) If TypeName(xRRg) = "Nothing" Then Exit Sub xI = 0 strNumber = "" For Each xRg In xDRg xI = xI + 1 nCellLength = Len(xRg) For xNumber = 1 To nCellLength If IsNumeric(Mid(xRg, xNumber, 1)) Then strNumber = strNumber & Mid(xRg, xNumber, 1) End If Next xNumber xRRg.Item(xI) = strNumber strNumber = "" Next xRg End Sub
- Y luego, presiona la tecla F5 para ejecutar este código, y aparecerá un cuadro de diálogo indicando que selecciones el rango de texto que deseas usar, ver captura de pantalla:
- Luego, haz clic en Aceptar, aparecerá otro cuadro de diálogo, selecciona una celda para mostrar el resultado, ver captura de pantalla:
- Por último, haz clic en el botón Aceptar, y todos los números en las celdas seleccionadas se han extraído de una vez.
Extraer solo números decimales de una cadena de texto
Si las cadenas de texto en tu hoja de cálculo incluyen algunos números decimales, ¿cómo podrías extraer solo los números decimales de las cadenas de texto?
La siguiente fórmula puede ayudarte a extraer rápidamente y fácilmente los números decimales de las cadenas de texto.
Copia y pega cualquiera de las siguientes fórmulas en una celda en blanco, y luego arrastra el controlador de relleno hacia abajo hasta las celdas que deseas contengan esta fórmula, todos los números decimales se extraen de las cadenas de texto.
● Todas las versiones de Excel:
=LOOKUP(9.9E+307,--LEFT(MID(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0}, $A2&"1023456789")),999),ROW(INDIRECT("1:999"))))
● Excel 365:
=REGEXEXTRACT(A2,"[\d.]+")
Extraer número del final de una cadena de texto
Al trabajar con cadenas de texto en Excel, es posible que necesites extraer números ubicados al final de la cadena. Para aislar números al final de una cadena, la siguiente fórmula puede ayudarte.
Copia y pega la siguiente fórmula en una celda en blanco, presiona Ctrl + Shift + Enter para obtener el primer resultado:
=RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)))
Luego, arrastra el controlador de relleno hacia abajo para aplicar esta fórmula a otras celdas. Esta fórmula extrae números exclusivamente del final de la cadena de texto, ignorando cualquier número que aparezca al principio o en medio. Ver captura de pantalla:
Extraer número del inicio de una cadena de texto
Para extraer números del inicio de una cadena de texto, utiliza la siguiente fórmula.
Copia y pega la siguiente fórmula en una celda en blanco, presiona Ctrl + Shift + Enter para obtener el primer resultado:
=LEFT(A2, MATCH(FALSE, ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2)+1)), 1) *1), 0) -1)
Luego, arrastra el controlador de relleno hacia abajo para aplicar esta fórmula a otras celdas, solo se extrae el número inicial. Ver captura de pantalla:
Extraer números de cadenas de texto es una tarea común en Excel, y hay varios métodos efectivos para lograrlo, dependiendo de tus necesidades y la complejidad de tus datos. Si estás interesado en explorar más consejos y trucos de Excel, nuestro sitio web ofrece miles de tutoriales.
Artículos relacionados:
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!