Tutorial de Excel: extraiga texto o número por posición específica
En muchos casos, es posible que solo necesite extraer el contenido útil de una oración o una cadena de texto en una celda, como extraer la provincia de la dirección, extraer la dirección de correo electrónico de una oración, extraer el número de factura de mensajería de una conversación, y así. Este tutorial limita la extracción a una posición específica en una celda y recopila diferentes métodos para ayudar a extraer texto o números de una celda por posición específica en Excel.
Tabla de contenido: [ Ocultar ]
Extraer texto por posición
Esta sección reúne posiciones comunes en las que se puede extraer un texto de una celda y proporciona los métodos correspondientes para manejarlas paso a paso. Puede navegar para obtener más detalles.
1. Extraiga el número de caracteres de izquierda o derecha
Para extraer la cantidad de caracteres del lado izquierdo o derecho de una cadena, puede probar uno de los métodos a continuación.
1.1 Extraiga los primeros o últimos N caracteres con fórmulas
Supongamos que tiene una lista de cadenas de texto en la columna B como se muestra en la captura de pantalla a continuación, para extraer los primeros 2 caracteres y los 2 últimos caracteres de cada cadena, puede aplicar las siguientes fórmulas.
Extraiga los primeros N caracteres de una cadena de texto
La función IZQUIERDA puede ayudar a extraer fácilmente los primeros N caracteres de una cadena de texto en Excel.
Fórmula genérica
=LEFT(text_string,[num_chars])
Argumentos
Ahora puede aplicar esta fórmula para extraer los primeros 2 caracteres de las celdas de la columna B.
1. Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el primer resultado. Seleccione la celda de resultados y arrastre su controlador de Autocompletar hacia abajo para aplicar la fórmula a otras celdas.
=LEFT(B5,2)
Ahora se han extraído los primeros 2 caracteres en cada celda del rango B5: B10.
Extraiga los últimos N caracteres de una cadena de texto
Aquí aplicamos la función DERECHA para extraer los últimos N caracteres de una cadena de texto en Excel.
Fórmula genérica
=RIGHT(text_string,[num_chars])
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el resultado. Luego seleccione esta celda de resultado y arrastre su controlador de Autocompletar hacia abajo para obtener otros resultados.
=RIGHT(B5,2)
1.2 Extraiga los primeros o últimos N caracteres con una herramienta increíble
Aunque las fórmulas anteriores son simples, para extraer los primeros o los últimos n caracteres de una larga lista de cadenas de texto, aún debe arrastrar el controlador de Autocompletar de arriba a abajo, lo que puede llevar un poco de tiempo. Aquí recomienda Kutools for Excel, Extraer texto utilidad para ayudar a extraer los primeros o últimos N caracteres de una lista de cadenas de texto a granel.
1. Seleccione la lista de cadenas de texto de la que desea extraer texto por adelantado y haga clic en Kutools > Texto > Extraer texto.
2. En la aparición Extraer texto cuadro de diálogo, debe configurarlo de la siguiente manera.
Note: Para hacer que el resultado sea dinámico cuando cambia la cadena de texto, puede marcar el Insertar como fórmula encajonar.
3. En la siguiente ventana emergente Extraer texto cuadro de diálogo, elija una celda para generar los caracteres extraídos y luego haga clic en OK.
Luego, los primeros o últimos N caracteres especificados se extraen de las celdas seleccionadas de forma masiva.
Haga clic para saber más sobre esta función.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
2. Extraiga texto antes o después de un determinado carácter/palabra
Para extraer texto antes o después de un determinado carácter o palabra, los diferentes escenarios de esta sección se adaptarán a sus necesidades.
2.1 Extraer texto antes o después del primer delimitador (un carácter)
Como se muestra en la captura de pantalla a continuación, para extraer texto antes o después del primer delimitador de cada celda en el rango B4:B10, puede aplicar uno de los métodos a continuación.
2.1.1 Extraer texto antes del primer delimitador con fórmula
Aplicar una fórmula basada en las funciones IZQUIERDA y ENCONTRAR puede ayudar a extraer texto antes del primer delimitador de una celda. Puede seguir los pasos a continuación para hacerlo.
Fórmula genérica
=LEFT(text_string,FIND("delimiter",text_string,1)-1)
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el botón Participar clave para obtener el primer resultado. Seleccione la primera celda de resultados y arrastre su controlador de Autocompletar hacia abajo para obtener los textos antes del primer delimitador de otras celdas.
=LEFT(B5,FIND("-",B5,1)-1)
2.1.2 Extraer texto después del primer delimitador con fórmula
La siguiente fórmula ayuda a extraer texto después del primer delimitador de una celda en Excel.
Fórmula genérica
=MID(text_string,FIND("delimiter",text_string)+1,LEN(text_string))
Argumentos
=MID(B5,FIND("-",B5)+1,LEN(B5))
2.1.3 Extraiga texto antes o después del primer delimitador con una herramienta increíble
Aquí recomienda encarecidamente el Extraer texto utilidad de Kutools para Excel. Con esta función, puede extraer fácilmente textos antes o después del primer delimitador de un rango de celdas de forma masiva.
1. Seleccione el rango de celdas donde desea extraer el texto y luego haga clic Kutools > Texto > Extraer texto.
2. En el Extraer texto cuadro de diálogo, debe configurarlo de la siguiente manera.
Nota: Para que el resultado sea dinámico cuando cambia la cadena de texto, puede marcar la casilla Insertar como fórmula.
3. Luego otro Extraer texto aparece un cuadro de diálogo, elija una celda para mostrar los resultados y haga clic en DE ACUERDO.
Luego, los textos antes o después del primer delimitador se extraen de las celdas seleccionadas a la vez.
Para obtener más información sobre esta característica, visite: Extraiga rápidamente cierto texto de las celdas en Excel.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
2.2 Extraer texto antes o después del último delimitador (un carácter)
En los pasos anteriores, hemos aprendido los métodos para extraer texto antes o después del primer delimitador de una celda. Como se muestra en la captura de pantalla a continuación, esta sección le mostrará dos fórmulas para extraer texto antes o después del último delimitador de una celda. Puede seguir los pasos a continuación para hacerlo.
2.2.1 Extraer texto antes del último delimitador con fórmula
Para extraer texto antes del último delimitador de una celda, puede usar las funciones BUSCAR, LARGO y SUSTITUIR dentro de la función IZQUIERDA.
Fórmula genérica
=LEFT(text_string,SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter",""))))-1)
Argumentos
Seleccione una celda, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y arrastre su controlador de Autocompletar hacia abajo para extraer los textos de otras cadenas de texto en la misma columna.
=LEFT(B5,SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-",""))))-1)
2.2.2 Extraer texto después del último delimitador con fórmula
Después de extraer el texto antes del último delimitador de una celda, puede aplicar la fórmula a continuación para extraer el texto después del último delimitador según lo necesite.
Fórmula genérica
=RIGHT(text_string,LEN(text_string)-SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter","")))))
Argumentos
Seleccione una celda, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y arrastre su controlador de Autocompletar hacia abajo para extraer los textos de otras cadenas de texto en la misma columna.
=RIGHT(B5,LEN(B5)-SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-","")))))
2.3 Extraer texto después del enésimo carácter
Mire el ejemplo a continuación, hay una lista de cadenas de texto en el rango B4: B10, para extraer el texto después del tercer carácter de cada celda, puede aplicar una fórmula basada en la función MID y la función LEN.
Fórmula genérica
=MID(text_string,nth_char+1,LEN(text_string))
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y arrastre su controlador de Autocompletar hacia abajo para obtener otros resultados.
=MID(B5,3+1,LEN(B5))
2.4 Extraer la enésima palabra de una cadena de texto
Supongamos que tiene una lista de cadenas de texto como se muestra en la captura de pantalla a continuación y desea extraer solo la enésima palabra de la cadena de texto, esta sección proporciona tres métodos para hacerlo.
2.4.1 Extraer la enésima palabra con fórmula
Puede combinar las funciones TRIM, MID, SUBSTITUTE, REPT y LEN para extraer la enésima palabra de una cadena de texto en una celda.
Fórmula genérica
=TRIM(MID(SUBSTITUTE(text_string," ",REPT(" ",LEN((text_string))), (N-1)*LEN((text_string)+1, LEN((text_string)))
Argumentos
En este caso, el rango B5:B10 contiene las cadenas de texto, D5:D10 contiene los números que representan la enésima palabra, apliquemos esta fórmula para extraer la enésima palabra de la cadena de texto.
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el botón Participar clave para obtener el primer resultado. Seleccione esta celda de resultados y arrastre su controlador de Autocompletar hacia abajo para obtener la enésima palabra de otras celdas.
=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (D5-1)*LEN(B5)+1, LEN(B5)))
Nota: Puede escribir directamente el número n en la fórmula de la siguiente manera.
=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (2-1)*LEN(B5)+1, LEN(B5)))
2.4.2 Extraiga la enésima palabra con la función definida por el usuario
Además de la fórmula anterior, también puede aplicar una función definida por el usuario para extraer la enésima palabra de una celda en Excel.
1. presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.
2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo, y luego copie el VBA a continuación en la ventana Código.
Código de VBA: extraiga la enésima palabra de una cadena de texto en una celda
Function ExtractTheNthWord(Source As String, Position As Integer)
'Update by Extendoffice 20211202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
FindWord = ""
Else
FindWord = arr(Position - 1)
End If
End Function
3. presione el otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana.
4. Vuelva a la hoja de trabajo que contiene las cadenas de texto de las que desea extraer la enésima palabra. Seleccione una celda en blanco, copie o ingrese la siguiente fórmula en ella y presione el botón Participar tecla para obtener la enésima palabra.
=FindWord(B5,D5)
Or
=FindWord(B5,2)
Nota: en la fórmula, D5 es la celda que contiene un número que representa la enésima palabra. Alternativamente, puede reemplazar directamente la referencia de celda con un número.
5. Seleccione la celda de resultados y arrastre su Manija de Autocompletar hacia abajo para extraer la enésima palabra de las cadenas de texto de otras celdas.
2.4.3 Extraiga la enésima palabra con una herramienta increíble
Si no desea aplicar manualmente una fórmula o una función definida por el usuario proporcionada anteriormente, aquí recomienda Kutools para Excel Extrae la enésima palabra en la celda utilidad. Con esta función, puede extraer fácilmente la enésima palabra de una cadena de texto en una celda con solo unos pocos clics.
1. Seleccione una celda para colocar el resultado y haga clic en Kutools > Ayudante de fórmula > Texto > Extraer la enésima palabra en la celda. Ver captura de pantalla:
2. En el Ayudante de fórmulas cuadro de diálogo, debe configurarlo de la siguiente manera.
3. Luego, la enésima (segunda) palabra se extrae de la cadena de texto en la celda B5, y puede ver que se crea una fórmula al mismo tiempo. Seleccione esta celda de resultado y arrastre su controlador de Autocompletar hacia abajo para obtener la enésima palabra de otras cadenas de texto.
Haga clic para saber más sobre esta función.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
2.5 Extraer texto antes o después de la enésima aparición de un delimitador
Supongamos que tiene una lista de cadenas de texto como se muestra en la captura de pantalla a continuación. Para extraer el texto antes o después de la segunda aparición de un espacio, esta sección proporciona dos fórmulas para ayudarlo a hacerlo.
2.5.1 Extraer texto antes de la enésima aparición de un delimitador
Puede usar la función IZQUIERDA junto con las funciones SUSTITUIR y ENCONTRAR para extraer texto antes de la enésima aparición de un delimitador de una celda en Excel.
Fórmula genérica
=LEFT(SUBSTITUTE(text_string,"delimiter",CHAR(9),n),FIND(CHAR(9),SUBSTITUTE(text_string,"delimiter",CHAR(9),n),1)-1)
Argumentos
Seleccione una celda, copie o ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y arrástrela hacia abajo para obtener otros resultados en la lista.
=LEFT(SUBSTITUTE(B5," ",CHAR(9),2),FIND(CHAR(9),SUBSTITUTE(B5," ",CHAR(9),2),1)-1)
Nota: En la fórmula, B5 es la celda que contiene la cadena de texto de la que desea extraer el texto; “ ” aquí representa un espacio y el número 2 representa la segunda aparición de un espacio. Puedes cambiarlos según tus necesidades.
2.5.2 Extraer texto después de la enésima aparición de un delimitador
Para extraer texto después de la enésima aparición de un delimitador, puede aplicar la función DERECHA con las funciones SUSTITUIR, LARGO y ENCONTRAR.
Fórmula genérica
=RIGHT(SUBSTITUTE(text_string, "delimiter", CHAR(9), n), LEN(text_string)- FIND(CHAR(9), SUBSTITUTE(text_string, "delimiter", CHAR(9), n), 1) + 1)
Argumentos
Ahora puede aplicar esta fórmula para extraer el texto después de la segunda aparición del espacio de cada celda en el rango B5: B10 de la siguiente manera.
Seleccione una celda, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y arrástrela hacia abajo para obtener otros resultados.
=RIGHT(SUBSTITUTE(B5, " ", CHAR(9), 2), LEN(B5)- FIND(CHAR(9), SUBSTITUTE(B5, " ", CHAR(9), 2), 1) + 1)
2.6 Extraer texto antes o después del salto de línea
Suponga que tiene una lista de pedidos en la columna B y desea extraer solo la parte de la fecha y la parte del número de producto de cada celda. Puede usar las siguientes fórmulas de Excel para hacerlo.
2.6.1 Extraer texto antes del primer salto de línea con fórmula
Como puede ver en la captura de pantalla anterior, la parte de la fecha se ubica antes del primer salto de línea dentro de la celda. Esta sección demostrará una función IZQUIERDA junto con la función BUSCAR para ayudarlo a extraer el texto antes del primer salto de línea dentro de una celda.
Fórmula genérica
=LEFT(cell, SEARCH(CHAR(10), cell)-1)
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=LEFT(B5, SEARCH(CHAR(10), B5)-1)
Luego puede ver el texto antes de que se extraiga el primer salto de línea en cada celda en el rango B5: B8 como se muestra en la captura de pantalla a continuación.
Nota: En la fórmula, CHAR(10) representa un salto de línea en Windows.
2.6.2 Extraer texto después del último salto de línea con fórmula
En el paso anterior, hablamos sobre cómo extraer texto antes del primer salto de línea dentro de una celda. Y esta parte lo guiará sobre cómo extraer texto después del último salto de línea dentro de una celda con una fórmula diferente.
Fórmula genérica
=TRIM(RIGHT(SUBSTITUTE(cell,CHAR(10),REPT(" ",200)),200))
Argumentos
Seleccione una celda en blanco, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar la fórmula a otras celdas.
=TRIM(RIGHT(SUBSTITUTE(B5,CHAR(10),REPT(" ",200)),200))
Entonces el producto no. parte de cada celda de la lista se extrae como se muestra en la captura de pantalla anterior.
Nota: En la fórmula, CHAR(10) representa un salto de línea en Windows.
2.7 Extraer texto antes o después de una palabra
En las partes anteriores, hemos aprendido cómo extraer texto antes o después de un carácter o delimitador. ¿Qué debe hacer para extraer texto antes o después de una palabra completa? Esta sección presentará tres métodos para ayudarlo a realizar esta tarea.
2.7.1 Extraer texto antes de una determinada palabra con fórmula
La siguiente fórmula lo ayuda a extraer texto antes de cierta palabra dentro de una celda en Excel.
Fórmula genérica
=IFERROR(LEFT(cell,FIND(word,cell)-1),cell)
Argumentos
Seleccione una celda en blanco, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
En este ejemplo, vamos a extraer todos los textos antes de la palabra "Excel", por lo que escribimos directamente la palabra en la fórmula y la encerramos entre comillas dobles. O puede hacer referencia a una celda que contiene la palabra "Excel".
=IFERROR(LEFT(B5,FIND("Excel",B5)-1),B5)
Notas:
2.7.2 Extraer texto después de cierta palabra con fórmula
Para extraer texto después de una determinada palabra, puede aplicar la siguiente fórmula para hacerlo.
Fórmula genérica
=TRIM(MID(cell,SEARCH(word,cell)+LEN(word),255))
Argumentos
Seleccione una celda, ingrese la fórmula a continuación y presione el botón Participar clave para obtener el resultado. Seleccione la celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=TRIM(MID(B5,SEARCH("Excel",B5)+LEN("Excel"),255))
Luego, puede ver todos los textos después de extraer la palabra "Excel" en cada celda, como se muestra en la captura de pantalla a continuación.
Notas:
2.7.3 Extraiga texto antes o después de una determinada palabra con una herramienta increíble
Si cree que el uso de fórmula puede causar muchos inconvenientes, aquí le recomendamos encarecidamente el Extraer texto utilidad de Kutools for Excel. Esta función ayuda a automatizar la tarea de extracción en Excel con solo unos pocos clics.
1. Hacer clic en Kutools > Texto > Extraer texto para activar esta función.
2. En el Extraer texto cuadro de diálogo, realice los siguientes ajustes.
Notas: Si desea crear resultados dinámicos, marque la Insertar como fórmula caja. Luego, los resultados se actualizarán automáticamente cuando cambien los datos en el rango.
3. Entonces un Extraer texto aparece un cuadro de diálogo, debe seleccionar una celda para generar el resultado y luego hacer clic en el botón OK del botón.
Luego, los textos antes o después de una determinada palabra dentro de cada celda en el rango seleccionado se extraen inmediatamente.
Nota: Esta función distingue entre mayúsculas y minúsculas.
Haga clic para saber más sobre esta función.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
3. Extraer entre caracteres/palabras
Si desea extraer texto entre ciertos caracteres o palabras, pruebe los siguientes métodos.
3.1 Extraer texto entre dos caracteres
Para extraer texto entre dos caracteres, que pueden ser iguales o diferentes. Esta sección proporciona varios métodos, y puede elegir uno de ellos según sus necesidades.
3.1.1 Extraer texto entre dos mismos caracteres con fórmula
Como se muestra en la captura de pantalla a continuación, hay una lista de cadenas de texto en la columna B, y desea extraer la parte numérica entre los caracteres "/" de cada celda en el rango, la siguiente fórmula puede hacerle un favor.
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el resultado. Seleccione la celda de resultados y luego arrástrela Control de Autocompletar hacia abajo para obtener resultados de otras celdas en la lista.
=SUBSTITUTE(MID(SUBSTITUTE("/" & B5&REPT(" ",6),"/",REPT(",",255)),2*255,255),",","")
Luego, el texto entre dos mismos caracteres "/" se extrae de cada celda del rango. Ver captura de pantalla:
Nota:
3.1.2 Extraer texto entre dos caracteres diferentes con fórmula
Después de aprender cómo extraer texto entre dos mismos caracteres dentro de una celda, aquí demostraremos una fórmula para extraer texto entre dos caracteres diferentes. Como se muestra en la captura de pantalla a continuación, para extraer solo la dirección de correo electrónico entre "<" y ">" de cada celda en la columna B, puede hacer lo siguiente.
Fórmula genérica
=MID(LEFT(cel,FIND("end_char",cell)-1),FIND("start_char",cell)+1,LEN(cell))
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=MID(LEFT(B5,FIND(">",B5)-1),FIND("<",B5)+1,LEN(B5))
Puede ver que solo se extrae el texto entre los caracteres especificados, como se muestra en la captura de pantalla anterior.
3.1.3 Extrae texto entre dos caracteres con una herramienta increíble
Aquí recomienda encarecidamente el Extrae cadenas entre el texto especificado característica de Kutools for Excel para ayudarlo a extraer fácilmente texto entre dos caracteres iguales o diferentes dentro de una celda en Excel.
1. Seleccione una celda en blanco para generar el resultado y luego haga clic en Kutools > Ayudante de fórmula > Ayudante de fórmula.
2. En el Ayudante de fórmulas cuadro de diálogo, realice los siguientes ajustes.
3. Luego, solo se extrae el texto entre "<" y ">" dentro de la celda B5. Mientras tanto, se ha creado una fórmula, puede seleccionar esta celda de resultado y luego arrastrar su controlador de Autocompletar hacia abajo para extraer textos de otras celdas en la misma lista.
Haga clic para saber más sobre esta función.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
3.1.4 Extraer texto entre dos caracteres (incluidos los caracteres) por regla
Si desea conservar los dos caracteres después de la extracción, intente aplicar una regla en la función Extraer texto de Kutools for Excel.
1. Hacer clic en Kutools > Texto > Extraer texto.
2. En el Extraer texto cuadro de diálogo, realice los siguientes ajustes.
3. Otro Extraer texto aparece un cuadro de diálogo, seleccione una celda para generar el resultado y luego haga clic en el OK del botón.
Luego, el texto entre los caracteres especificados (incluidos los caracteres) se extrae de cada celda en el rango seleccionado de forma masiva.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
3.2 Extraer texto entre dos palabras
Además de extraer texto entre dos caracteres, es posible que también necesite extraer texto entre dos palabras. Por ejemplo, extraiga todas las cadenas de texto entre dos palabras "KTE" y "característica" de cada celda en la columna B como se muestra en la captura de pantalla a continuación. Puede probar uno de los siguientes métodos para hacerlo.
3.2.1 Extraer texto entre dos palabras con fórmula
Puede usar una fórmula basada en la función MID y la función BUSCAR para extraer todas las cadenas de texto entre dos palabras dentro de una celda.
Fórmula genérica
=MID(cell,SEARCH("start_word",cell)+3,SEARCH("end_word",cell)-SEARCH("start_word",cell)-4)
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=MID(B5,SEARCH("KTE",B5)+3,SEARCH("feature",B5)-SEARCH("KTE",B5)-4)
Note: En la fórmula, el número 3 representa la longitud de caracteres de la palabra "KTE"; el número 4 representa la longitud de caracteres de la palabra "KTE" más 1.
Puede ver que todas las cadenas de texto entre las dos palabras especificadas se extraen de cada celda en la columna B.
3.2.2 Extrae texto entre dos palabras con una herramienta increíble
Para muchos usuarios de Excel, las fórmulas pueden ser difíciles de recordar y manejar. Aquí, con el Extrae cadenas entre el texto especificado característica de Kutools for Excel, puede extraer fácilmente texto entre dos palabras con solo unos pocos clics.
1. Seleccione una celda para generar el resultado y luego haga clic Kutools > Ayudante de fórmula > Ayudante de fórmula.
2. En el Ayudante de fórmula cuadro de diálogo, debe configurarlo de la siguiente manera.
3. Luego, se extraen todas las cadenas de texto entre dos palabras "KTE" y "característica" dentro de la celda B5. Mientras tanto, se ha creado una fórmula, puede seleccionar esta celda de resultado y luego arrastrar su controlador de Autocompletar hacia abajo para extraer textos de otras celdas en la misma lista.
Si desea tener una prueba gratuita (30 días) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.
Extraer números por posición
Para una lista de cadenas alfanuméricas, puede haber tres casos:
- El número está al principio del texto.;
- El número está al final del texto.;
- El número puede estar en cualquier parte del texto..
En esta sección, proporcionaremos diferentes métodos que se pueden usar para extraer los números en cada caso que se mencionó anteriormente.
1 Extrae el número de la izquierda de una cadena
Esta parte presentará una fórmula para ayudarlo a extraer solo los números que aparecen antes del texto en una celda.
Fórmula genérica
=LEFT(cell, MATCH(FALSE, ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell)+1)), 1) *1), 0) -1)
Argumentos
Nota:
Seleccione una celda en blanco, ingrese la fórmula a continuación y presione Ctrl + Shift + Participar or Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para obtener números de otras celdas.
=LEFT(B5, MATCH(FALSE, ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5)+1)), 1) *1), 0) -1)
Notas:
2 Extrae el número de la derecha de una cadena
Como se muestra en la captura de pantalla a continuación, para extraer solo los números que aparecen después del texto en una celda, pruebe la siguiente fórmula.
Fórmula genérica
=RIGHT(cell, LEN(cell) - MAX(IF(ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(cell))), 0)))
Argumentos
Nota:
Seleccione una celda en blanco, ingrese la fórmula a continuación y presione Ctrl + Shift + Participar or Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para obtener números de otras celdas.
=RIGHT(B5, LEN(B5) - MAX(IF(ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(B5))), 0)))
Notas:
3. Extraiga todos los números de cualquier posición en una cadena de texto
Los métodos anteriores ayudan a extraer el número solo desde la izquierda o la derecha de una cadena de texto. Si desea extraer todos los números de cualquier parte de una cadena de texto, aquí le proporcionamos tres métodos para hacerlo.
3.1 Extraiga todos los números de cualquier parte de una cadena con fórmula
Puede aplicar la siguiente fórmula para extraer todos los números de cualquier lugar en una cadena de texto en Excel.
1. Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener todos los números de la celda B5.
=SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(--MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1)) * ROW(INDIRECT("1:"&LEN(B5))), 0), ROW(INDIRECT("1:"&LEN(B5))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(B5)))/10)
2. Seleccione la celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para obtener todos los números de otras celdas.
3.2 Extraiga todos los números de cualquier parte de una cadena con VBA
La fórmula anterior es demasiado larga y complicada para muchos usuarios de Excel. En realidad, puede ejecutar un script de VBA para automatizar la tarea en Excel. Puedes hacer lo siguiente.
1. presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.
2. En la apertura Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo. Luego copie el VBA a continuación en la ventana de código del Módulo.
Código de VBA: extraiga todos los números de cualquier lugar en una cadena de texto
Sub ExtrNumbersFromRange()
'Updated by Extendoffice 20220106
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
3. presione el F5 clave para ejecutar el código. En la apertura KutoolsparaExcel cuadro de diálogo, seleccione el rango de celdas donde desea extraer todos los números de cada celda, y luego haga clic en el botón OK del botón.
4. Luego otro KutoolsparaExcel aparece el cuadro de diálogo. En este cuadro de diálogo, seleccione una celda de destino y haga clic en DE ACUERDO.
Luego, todos los números se extraen de cada celda en el rango seleccionado de forma masiva.
4. Extrae números después de un texto específico
Como se muestra en la captura de pantalla a continuación, para extraer cualquier número después del texto específico "No", esta sección proporciona dos métodos para ayudarlo a hacerlo.
4.1 Extraer números después de un texto específico con fórmula
Puede aplicar la siguiente fórmula para extraer números después de un texto específico en una celda en Excel.
Fórmula genérica:
=LOOKUP(10^6,1*MID(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789",FIND("text"," "&cell&" "))),{2,3,4,5,6}))
Argumentos
Seleccione una celda en blanco, copie o ingrese la fórmula a continuación y presione el Participar clave para obtener el resultado. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=LOOKUP(10^6,1*MID(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789",FIND("No."," "&B5&" "))),{2,3,4,5,6}))
Notas:
4.2 Extraer números después de un texto específico con función definida por el usuario
La siguiente función definida por el usuario también puede ayudar a extraer números después de un texto específico en una celda. Por favor, haga lo siguiente.
1. presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.
2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo, y luego copie el código VBA a continuación en la ventana de código del Módulo.
Código VBA: extraiga números después de un texto específico en una celda
Function GetNumberAfterTheChar(Rng As Range, Char As String)
'Updated by Extendoffice 20220106
Dim xValue As String
Dim xRntString As String
Dim xStart As Integer
Dim xC
xValue = Rng.Text
xStart = InStr(1, xValue, Char, vbTextCompare)
If IsEmpty(xStart) Then
GetNumberAfterTheChar = ""
Exit Function
End If
If xStart < 1 Then
GetNumberAfterTheChar = ""
Exit Function
End If
xStart = xStart - 1 + Len(Char)
If xStart < 1 Then
GetNumberAfterTheChar = ""
Exit Function
End If
xValue = Mid(xValue, xStart + 1)
xRntString = ""
For xI = 1 To Len(xValue)
xC = Mid(xValue, xI, 1)
Select Case Asc(xC)
Case 48 To 57
xRntString = xRntString & xC
Case Else
Exit For
End Select
Next
GetNumberAfterTheChar = xRntString
End Function
3. presione el otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana.
4. Seleccione una celda, ingrese la fórmula a continuación y presione el Participar llave. Seleccione esta celda de resultados y luego arrastre su controlador de Autocompletar hacia abajo para aplicar esta fórmula a otras celdas.
=GetNumberAfterTheChar(B5,"No. ")
Notas:
Artículos relacionados:
Tutorial de Excel: división de celdas de texto, número y fecha (separadas en varias columnas)
Este tutorial se divide en tres partes: dividir celdas de texto, dividir celdas numéricas y dividir celdas de fecha. Cada parte proporciona diferentes ejemplos para ayudarlo a saber cómo manejar el trabajo de división cuando se encuentra con el mismo problema.
Haga clic para saber más ...
Excel Agregar texto y número en la posición especificada de la celda
En Excel, agregar textos o números a las celdas es un trabajo muy común. Como agregar espacios entre nombres, agregar prefijos o sufijos a las celdas, agregar guiones a los números sociales. Aquí, en este tutorial, enumera casi todos los escenarios de adición en Excel y proporciona los métodos correspondientes para usted.
Haga clic para saber más ...
Excel Eliminar caracteres, palabras, números de cadenas de texto
Supongamos que tiene una lista larga de cadenas de texto que contienen caracteres, números u otros símbolos específicos. En cierto caso, es posible que deba eliminar algunos caracteres según la posición, como los de la derecha, la izquierda o el centro de las cadenas de texto, o eliminar algunos caracteres no deseados, números de la lista de cadenas. Encontrar las soluciones una por una le dará un dolor de cabeza, este tutorial recopila todo tipo de métodos para eliminar caracteres, palabras o números en Excel.
Haga clic para saber más ...
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!