Skip to main content

Excel: eliminar caracteres, palabras, números de cadenas de texto

Author: Xiaoyang Last Modified: 2025-06-06

Si tiene una lista de cadenas de texto en Excel que contienen caracteres, números o símbolos no deseados, es posible que necesite eliminar ciertos elementos según su posición o tipo. Ya sea recortando caracteres desde la izquierda, derecha o el medio, o eliminando caracteres y números específicos, Excel ofrece varias formas de limpiar sus datos. Este tutorial proporciona métodos paso a paso utilizando fórmulas, Funciones Definidas por el Usuario (UDFs) y funciones integradas para eliminar con facilidad caracteres, palabras y números no deseados de sus cadenas de texto.

Índice de contenidos:

1. Eliminar caracteres desde la izquierda, derecha o el medio de las cadenas de texto

2. Eliminar caracteres no deseados / especiales de la cadena de texto

3. Eliminar caracteres / texto antes o después de un carácter específico

 4. Eliminar palabras de cadenas de texto


 Eliminar caracteres desde la izquierda, derecha o el medio de las cadenas de texto

Puede ser una tarea común para la mayoría de nosotros eliminar algunos caracteres desde la izquierda, derecha o el medio de las cadenas de texto en las hojas de cálculo de Excel. En esta sección, se presentarán algunos trucos rápidos y fáciles para resolver esta tarea.

1.1 Eliminar los primeros n caracteres de las cadenas de texto

Si necesita eliminar los primeros n caracteres de una lista de cadenas de texto, los siguientes métodos pueden serle de ayuda.

 Usando fórmulas

Normalmente, para eliminar los caracteres desde el inicio de las cadenas de texto, puedes usar ya sea la función REEMPLAZAR o una combinación de las funciones DERECHA y LARGO.

Función REEMPLAZAR para eliminar los primeros N caracteres:

=REEMPLAZAR(cadena, 1, num_caracteres, "")
  • "cadena": La cadena de texto de la que desea eliminar caracteres;
  • "num_chars": El número de caracteres que desea eliminar.

Por ejemplo, para eliminar los primeros 2 caracteres de las celdas, utilice la siguiente fórmula y luego arrastre el controlador de relleno para copiar la fórmula a otras celdas, consulte la captura de pantalla:

=REPLACE(A4, 1, 2, "")

Funciones DERECHA y LARGO para eliminar los primeros N caracteres:

=DERECHA(cadena, LARGO(cadena) - num_caracteres)
  • "cadena": La cadena de texto de la que desea eliminar caracteres;
  • "num_chars": El número de caracteres que desea eliminar.

Para eliminar los primeros 2 caracteres de las celdas, por favor aplique la siguiente fórmula:

=RIGHT(A4,LEN(A4)-2)


 Usando una función definida por el usuario

Para eliminar los primeros n caracteres de las celdas, también puedes crear una Función Definida por el Usuario para resolver esta tarea. Por favor, sigue los siguientes pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana de Módulo.

Código VBA: Eliminar los primeros n caracteres de cadenas de texto

Function removeFirstx(rng As String, cnt As Long)
'Updateby Extendoffice
removeFirstx = Right(rng, Len(rng) - cnt)
End Function

3. Luego, regresa a la hoja de cálculo y escribe esta fórmula: "=removefirstx(A4,2)" en una celda en blanco, y luego arrastra el controlador de relleno hacia abajo para obtener los resultados que necesitas, consulta la captura de pantalla:

Nota: En esta fórmula: "A4" es la celda de la que desea eliminar caracteres; El número "2" indica la cantidad de caracteres que desea eliminar desde el inicio de la cadena de texto.

A screenshot showing the result of using a custom VBA function to remove characters from text in Excel


1.2 Eliminar los últimos n caracteres de las cadenas de texto

Para eliminar un número específico de caracteres del lado derecho de las cadenas de texto, también puedes usar una fórmula o una Función Definida por el Usuario.

 Usando fórmula

Para eliminar los últimos n caracteres de las cadenas de texto, puedes usar una fórmula basada en las funciones IZQUIERDA y LARGO.

Funciones IZQUIERDA y LARGO para eliminar los últimos N caracteres:

=IZQUIERDA(cadena, LARGO(cadena) - num_caracteres)
  • "cadena": La cadena de texto de la que desea eliminar caracteres;
  • "num_chars": El número de caracteres que desea eliminar.

Para eliminar 3 caracteres del final de las cadenas de texto, por favor use esta fórmula, y luego arrastre el controlador de relleno para copiar la fórmula a otras celdas, vea la captura de pantalla:

=LEFT(A4, LEN(A4) - 3)


 Mediante el uso de una función definida por el usuario

Una Función Definida por el Usuario también puede ayudarte a eliminar los últimos n caracteres de una lista de celdas. Sigue estos pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana de Módulo.

Código VBA: Eliminar los últimos n caracteres de las cadenas de texto

Function removeLastx(rng As String, cnt As Long)
'Updateby Extendoffice
removeLastx = Left(rng, Len(rng) - cnt)
End Function

3. Luego, regresa a la hoja de cálculo e introduce esta fórmula: "=removelastx(A4,3)" en una celda en blanco, y luego arrastra el controlador de relleno hacia abajo para obtener los resultados que necesitas, consulta la captura de pantalla:

Nota: En esta fórmula: "A4" es la celda de la que desea eliminar caracteres; El número "3" indica la cantidad de caracteres que desea eliminar del final de la cadena de texto.

A screenshot showing the result of using a custom VBA function to remove characters from the end of text in Excel


1.3 Eliminar los primeros, últimos n caracteres o caracteres en ciertas posiciones utilizando una función avanzada

Puede ser complicado para ti recordar varias fórmulas para eliminar caracteres desde la izquierda, derecha o una posición específica de las cadenas de texto. "Kutools for Excel" ofrece una función potente: "Eliminar caracteres en una posición específica". Con esta pequeña herramienta, puedes realizar estas tareas con solo unos clics sin necesidad de recordar ninguna fórmula.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione las celdas de las que desea eliminar caracteres y luego haga clic en "Kutools" > "Texto" > "Eliminar caracteres en una posición específica", vea la captura de pantalla:

2. En el cuadro de diálogo "Eliminar por posición", realice las siguientes operaciones:

2.1 Eliminar los primeros n caracteres de las celdas:

  • En el cuadro de texto "Números", escriba la cantidad de caracteres que desea eliminar de las cadenas. En este ejemplo, eliminaré los primeros 2 caracteres.
  • Seleccione la opción "Desde la izquierda" en la sección "Posición".
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para obtener el resultado como se muestra en la captura de pantalla a continuación.

2.2 Eliminar los últimos n caracteres de las celdas:

  • En el cuadro de texto "Números", escriba la cantidad de caracteres que desea eliminar de las cadenas. En este ejemplo, eliminaré los últimos 3 caracteres.
  • Seleccione la opción "Empezar desde la derecha" en la sección "Posición".
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para obtener el resultado como se muestra en la captura de pantalla a continuación.

2.3 Eliminar n caracteres desde una posición específica de las celdas:

Si necesita eliminar un número específico de caracteres desde una posición determinada de las cadenas de texto, por ejemplo, eliminar 3 caracteres empezando desde el tercer carácter de las cadenas.

  • En el cuadro de texto "Números", escriba la cantidad de caracteres que desea eliminar de las cadenas. En este ejemplo, eliminaré 3 caracteres desde una posición determinada.
  • Seleccione la opción "Especificar" y escriba el número desde el cual desea eliminar caracteres en el cuadro de texto de la sección "Posición". Aquí, eliminaré caracteres a partir del tercer carácter.
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para obtener el resultado como se muestra en la captura de pantalla a continuación.

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


1.4 Eliminar tanto los primeros n como los últimos n caracteres de las cadenas de texto con fórmula

Cuando necesitas eliminar algunos caracteres en ambos lados de las cadenas de texto en Excel, puedes combinar las funciones MID y LEN para crear una fórmula que maneje esta tarea.

=EXTRAE(cadena, caracteres_izquierda + 1, LARGO(cadena) - (caracteres_izquierda + caracteres_derecha))
  • "cadena": La cadena de texto de la que desea eliminar caracteres;
  • "left_chars": El número de caracteres a eliminar desde la izquierda;
  • "right_chars": El número de caracteres que se eliminarán desde la derecha.

Por ejemplo, si necesitas eliminar los primeros 7 caracteres y los últimos 5 caracteres de cadenas de texto al mismo tiempo, por favor, introduce la siguiente fórmula en una celda en blanco:

=MID(A4, 7+1, LEN(A4) - (7+5))

Nota: En esta fórmula: "A4" es la celda de la que desea eliminar caracteres; El número "7" es la cantidad de caracteres que desea eliminar desde el lado izquierdo; El número "5" es la cantidad de caracteres que desea eliminar desde el lado derecho.

Luego, arrastra el controlador de relleno hacia abajo hasta donde deseas aplicar esta fórmula, y obtendrás el resultado tal como se muestra en la captura de pantalla a continuación:


 Eliminar caracteres no deseados / especiales de las cadenas de texto

Al importar datos de otro lugar a Excel, muchos caracteres especiales o no deseados pueden pegarse en su hoja de cálculo. Para eliminar estos caracteres no deseados, como #@$%^&, espacios, números, caracteres no numéricos, saltos de línea, etc., esta sección proporcionará algunos métodos útiles para ayudarle.

2.1 Eliminar algunos caracteres especiales de las cadenas de texto

Si hay algunos caracteres especiales como %^&*() dentro de las cadenas de texto, para eliminar este tipo de caracteres, puedes aplicar los siguientes tres trucos.

 Eliminar varios caracteres especiales de cadenas de texto con la función SUBSTITUIR

Normalmente, en Excel, puedes anidar varias funciones SUSTITUIR para reemplazar cada carácter específico con nada; la sintaxis genérica es:

=SUSTITUIR(SUSTITUIR(SUSTITUIR(celda_texto, char1, ""), char2, ""), char3, "")
  • "string_cell": La celda contiene la cadena de texto de la cual desea eliminar los caracteres especiales;
  • "char1, char2, char3": Los caracteres no deseados que desea eliminar.

Ahora, por favor copie o introduzca la siguiente fórmula en una celda en blanco:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "#", ""), "&", ""), "*", ""), "%", "")

Luego, arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula, y todos los caracteres no deseados que especificaste se eliminarán de una vez, consulta la captura de pantalla:

Consejos: Si hay más caracteres que deseas eliminar, solo necesitas anidar más funciones SUSTITUIR dentro de la fórmula.


 Eliminar varios caracteres especiales de cadenas de texto con una Función Definida por el Usuario

Las funciones anidadas SUSTITUIR mencionadas anteriormente funcionan bien si hay pocos caracteres especiales que eliminar. Sin embargo, si tienes decenas de caracteres para eliminar, la fórmula puede volverse demasiado larga y difícil de manejar. En este caso, la siguiente Función Definida por el Usuario puede ayudarte a completar esta tarea de manera rápida y sencilla.

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana de Módulo.

Código VBA: Eliminar varios caracteres especiales de cadenas de texto

Function RemoveUnwantedChars(Str As String, xchars As String)
'Updateby Extendoffice
    For Index = 1 To Len(xchars)
        Str = Replace(Str, Mid(xchars, Index, 1), "")
    Next
    RemoveUnwantedChars = Str
End Function

3. Luego, cierra la ventana de código y regresa a la hoja de cálculo, introduce esta fórmula "=RemoveUnwantedChars(A2, $D$2)" en una celda en blanco donde deseas obtener el resultado, y luego arrastra el controlador de relleno hacia abajo para obtener los resultados según sea necesario, consulta la captura de pantalla:

Nota: En la fórmula anterior: "A2" es la celda de la que desea eliminar caracteres; "$D$2" contiene los caracteres especiales que desea eliminar (puede escribir cualquier otro carácter especial que necesite).

A screenshot showing the result of using a VBA User Defined Function to remove multiple special characters from text in Excel


 Elimina varios caracteres especiales de las cadenas de texto utilizando una característica asombrosa

Si ha instalado "Kutools para Excel", con su función "Eliminar caracteres", puede eliminar todo tipo de caracteres, como caracteres numéricos, caracteres alfabéticos, caracteres no imprimibles… de una lista de celdas según lo necesite.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de celdas del que desea eliminar los caracteres especiales, y luego haga clic en "Kutools" > "Texto" > "Eliminar caracteres", vea la captura de pantalla:

2. En el cuadro de diálogo "Eliminar caracteres":

  • Marque la opción "Personalizado" en la sección "Eliminar caracteres".
  • Y luego ingrese los caracteres especiales en el cuadro de texto que desea eliminar.
  • Luego, haz clic en el botón "Aceptar" o "Aplicar" para eliminar los caracteres que especificaste de una vez. Ver captura de pantalla:

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


2.2 Eliminar todos los números de las cadenas de texto

Si tienes una lista de cadenas de texto que mezclan números, letras y caracteres especiales, y ahora solo quieres eliminar todos los números y conservar los demás caracteres, esta sección te proporcionará algunos métodos prácticos para ayudarte.

 Eliminar números de cadenas de texto con la función SUSTITUIR

En Excel, la función ANIDADA SUSTITUIR puede ayudarte a reemplazar todos los números por nada, por lo que puedes usar la siguiente fórmula para eliminar todos los números de las celdas:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,1,""),2,""),3,""),4,""),5,""),6,""),7,""),8,""),9,""),0,"")

Luego, arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula, y todos los números se eliminarán de la lista de cadenas de texto, consulta la captura de pantalla:


 Eliminar números de cadenas de texto con la función TEXTJOIN

Si tiene Excel 2019, 2021 o 365, la nueva función TEXTJOIN también puede ayudar a eliminar números de cadenas de texto.

Por favor, copie la siguiente fórmula en una celda en blanco y luego presione las teclas Ctrl + Shift + Enter juntas para obtener el primer resultado:

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

Luego, copie la fórmula en las otras celdas debajo donde desea aplicar esta fórmula, vea la captura de pantalla:

Nota: Esta función TEXTJOIN solo está disponible en Excel 2019, 2021 y Office 365.


 Eliminar números de cadenas de texto con una Función Definida por el Usuario

Además de las dos fórmulas anteriores, una Función Definida por el Usuario también puede ayudarte. Por favor, sigue los siguientes pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar números de cadenas de texto

Function RemoveNumbers(Txt As String) As String
'Updateby Extendoffice
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNumbers = .Replace(Txt, "")
End With
End Function

3. Luego, cierra y sal de la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula: =RemoveNumbers(A2) en una celda en blanco, después arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula, consulta la captura de pantalla:

A screenshot showing the VBA User Defined Function result to remove numbers from text strings in Excel


 Eliminar números de cadenas de texto con una opción práctica

Si estás cansado de las fórmulas complicadas, déjame mostrarte una herramienta fácil: "Kutools para Excel" y su función "Eliminar caracteres". Con esta práctica característica, puedes realizar esta tarea con solo unos pocos clics.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de celdas donde desea eliminar los números, y luego haga clic en "Kutools" > "Texto" > "Eliminar caracteres".

2. En el cuadro de diálogo "Eliminar caracteres", realice las siguientes operaciones:

  • Marque la opción "Numérico" en la sección "Eliminar caracteres".
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para eliminar los números inmediatamente. Ver captura de pantalla:

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


2.3 Eliminar caracteres no numéricos de cadenas de texto

Para eliminar todos los caracteres no numéricos y conservar solo los números de las cadenas de texto, esta sección tratará sobre algunas formas de resolver esta tarea en Excel.

 Eliminar caracteres no numéricos de cadenas de texto con fórmula en Excel 2016 y versiones anteriores

Si está utilizando Excel 2016 o versiones anteriores, debe aplicar una fórmula compleja para realizar esta tarea; copie o introduzca la siguiente fórmula en una celda en blanco:

=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)

Luego, copia la fórmula en las demás celdas debajo donde deseas aplicar esta fórmula, como se muestra en la captura de pantalla:

Nota: Si los números en una cadena de texto comienzan con 0, el 0 se perderá.


 Eliminar caracteres no numéricos de cadenas de texto con la función TEXTJOIN en Excel 2019, 2021, 365

La fórmula anterior puede ser demasiado difícil de entender para la mayoría de nosotros. Si tienes Excel 2019, 2021 u Office 365, hay una fórmula práctica que puede ayudarte.

Por favor, copie o introduzca la siguiente fórmula en una celda en blanco y presione las teclas "Ctrl + Shift + Enter" juntas para obtener el primer resultado correcto:

=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))

Luego, arrastra el controlador de relleno hacia abajo hasta las celdas donde aplicarás esta fórmula, y obtendrás el resultado tal como se muestra en la captura de pantalla a continuación:

Nota: Con esta fórmula, puede ver que los ceros iniciales se conservarán ya que los números se devuelven como texto.


 Eliminar caracteres no numéricos de cadenas de texto con una Función Definida por el Usuario

Por supuesto, también puedes crear tu propia Función Definida por el Usuario con una sintaxis más simple, hazlo de esta manera:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana de Módulo.

Código VBA: Eliminar caracteres no numéricos de cadenas de texto

Function Removenonnumeric(str As String) As String
'Updateby Extendoffice
    With CreateObject("VBScript.RegExp")
        .Global = True
        .Pattern = "[^0-9]"
        Removenonnumeric = .Replace(str, "")
    End With
End Function

3. Luego, cierra y sal de la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula: =Removenonnumeric(A2) en una celda en blanco, luego arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula; solo se extraerán los números, tal como se muestra en la siguiente captura de pantalla:

A screenshot showing the result of using a VBA User Defined Function to extract only numbers from text strings in Excel


 Eliminar caracteres no numéricos de cadenas de texto con una función sencilla

Para eliminar caracteres no numéricos en un rango de celdas directamente, la utilidad "Eliminar caracteres" de "Kutools para Excel" puede hacerlo con solo unos pocos clics.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de celdas del que desea eliminar los caracteres no numéricos, y luego haga clic en "Kutools" > "Texto" > "Eliminar caracteres".

2. En el cuadro de diálogo "Eliminar caracteres", configure las siguientes operaciones:

  • Marque la opción "No numérico" en la sección "Eliminar caracteres".
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para eliminar todos los caracteres no numéricos de inmediato. Vea la captura de pantalla:

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


2.4 Separar texto y números de una celda en dos columnas

A veces, es posible que desee extraer el texto y los números de las cadenas de texto en dos columnas separadas. Con la ayuda de los siguientes métodos, puede completar esta tarea rápidamente y sin esfuerzo.

 Separar texto y números de una celda en dos columnas con una Función Definida por el Usuario

Al utilizar la siguiente Función Definida por el Usuario, puede extraer el texto y los números a la vez. Siga los siguientes pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Separar texto y números de cadenas de texto en dos columnas

Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Updateby Extendoffice
Dim xLen As Long
Dim xStr As String
xLen = VBA.Len(pWorkRng.Value)
For i = 1 To xLen
    xStr = VBA.Mid(pWorkRng.Value, i, 1)
    If ((VBA.IsNumeric(xStr) And pIsNumber) Or (Not (VBA.IsNumeric(xStr)) And Not (pIsNumber))) Then
        SplitText = SplitText + xStr
    End If
Next
End Function

3. Luego, cierra y sal de la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula: =SplitText(A2,FALSE) en una celda en blanco, y luego arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula para obtener todo el texto, consulta la captura de pantalla:

A screenshot showing the result of using a User Defined Function to separate text from numbers in Excel

4. Y luego, sigue escribiendo esta fórmula: =SplitText(A2,TRUE) en otra celda y arrastra el controlador de relleno hacia abajo hasta las celdas en las que deseas aplicar esta fórmula para obtener los números, consulta la captura de pantalla:

A screenshot showing the result of using a User Defined Function to extract numbers from a text string in Excel


 Separa texto y números de una celda en dos columnas con una función sencilla

Si tienes "Kutools para Excel", su utilidad "Dividir celdas" puede ayudarte a dividir celdas en múltiples columnas o filas basándose en cualquier separador, ancho especificado, o texto y número.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de celdas que desea dividir, y luego haga clic en "Kutools" > "Combinar y Dividir" > "Dividir celdas", vea la captura de pantalla:

2. En el cuadro de diálogo "Dividir celdas", seleccione la opción "Dividir en columnas" en la sección "Tipo" y luego marque "Texto y número" en la sección "Separador", vea la captura de pantalla:

3. Luego, haga clic en el botón "Aceptar" y aparecerá otro cuadro de diálogo "Dividir celdas". Seleccione una celda para mostrar el texto y los números separados, y luego haga clic en el botón "Aceptar". Ahora, puede ver que el texto y los números en las celdas seleccionadas se dividen en dos columnas de inmediato, como se muestra en la siguiente demostración:

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


2.5 Eliminar caracteres de salto de línea de las cadenas de texto

Un salto de línea es algo que te permite tener varias líneas en la misma celda en Excel. A veces, cuando copias datos de un sitio web o separas manualmente el contenido de tus celdas con las teclas "Alt + Enter", obtendrás saltos de línea o retornos de carro. En algunos casos, es posible que desees eliminar los saltos de línea para que el contenido de la celda aparezca en una sola línea, como se muestra en la captura de pantalla a continuación. Aquí, te presentaré algunas formas de resolver esta tarea en Excel.

 Eliminar caracteres de salto de línea de cadenas de texto con la función Buscar y Reemplazar

En Excel, puedes usar la función "Buscar y Reemplazar" para eliminar los saltos de línea, sigue estos pasos:

1. Seleccione el rango de datos del que desea eliminar los saltos de línea.

2. Luego, haz clic en "Inicio" > "Buscar y seleccionar" > "Reemplazar" (o presiona las teclas "Ctrl + H") para abrir el cuadro de diálogo "Buscar y reemplazar", como se muestra en la captura de pantalla:

3. En el cuadro de diálogo emergente "Buscar y Reemplazar", realice las siguientes operaciones:

  • Coloque el cursor en el campo "Buscar lo siguiente" y presione "Ctrl + J" en el teclado, puede que no vea nada, pero el carácter de salto de línea ya ha sido insertado.
  • En el campo "Reemplazar con", deja este campo vacío para simplemente eliminar los saltos de línea o presiona la "barra Espaciadora" una vez para reemplazar los saltos de línea con espacios en blanco.

4. Luego, haga clic en el botón "Reemplazar Todo", todos los saltos de línea en las celdas seleccionadas se eliminarán o reemplazarán con espacios en blanco de una vez. Vea la captura de pantalla:


 Eliminar caracteres de salto de línea de cadenas de texto con la función SUSTITUIR

También puedes crear una fórmula basada en las funciones SUBSTITUTE y CHAR para eliminar los saltos de línea de las cadenas de texto.

Por favor, aplica la siguiente fórmula para obtener el resultado:

=SUBSTITUTE(A2,CHAR(10),"")

Consejos: La función SUBSTITUTE busca y reemplaza el carácter CHAR(10), que representa el carácter de salto de línea, con nada. Si deseas que el resultado esté separado por una coma y un espacio, puedes usar la siguiente fórmula:

=SUBSTITUTE(A2,CHAR(10),", ")


 Eliminar caracteres de salto de línea de cadenas de texto con código VBA

Si te sientes cómodo usando código VBA, aquí también se proporciona un código para ti. Por favor, sigue los siguientes pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar saltos de línea de las cadenas de texto

Sub RemoveCarriage()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    Rng.Value = Replace(Rng.Value, Chr(10), "")
Next
End Sub

3. Luego, presione la tecla "F5" para ejecutar este código, y aparecerá un cuadro de diálogo. Seleccione el rango del cual desea eliminar los saltos de línea, tal como se muestra en la captura de pantalla a continuación:

A screenshot of a prompt box asking the user to select a range to remove line breaks in Excel

4. Luego, haga clic en el botón "Aceptar", todos los saltos de línea se eliminarán del rango de datos seleccionado.


 Eliminar caracteres de salto de línea de cadenas de texto con una opción inteligente

Aquí, la función "Eliminar caracteres" de "Kutools para Excel" también puede ayudarte a eliminar los saltos de línea con facilidad.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de celdas donde desea eliminar los saltos de línea, y luego haga clic en "Kutools" > "Texto" > "Eliminar caracteres".

2. En el cuadro de diálogo "Eliminar caracteres", configure las siguientes operaciones:

  • Marque la opción "No imprimibles" en la sección "Eliminar caracteres".
  • Luego, haga clic en el botón "Aceptar" o "Aplicar" para eliminar todos los saltos de línea del rango de datos seleccionado. Vea la captura de pantalla:

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


2.6 Eliminar espacios (iniciales, finales, adicionales o todos los espacios) de las cadenas de texto

Copiar y pegar texto desde una fuente externa a una hoja de cálculo de Excel a menudo trae algunos espacios en blanco molestos; eliminar manualmente los espacios iniciales, finales u otros espacios adicionales puede ser tedioso. Afortunadamente, Excel proporciona algunos trucos sencillos para manejar esta tarea.

 Eliminar espacios adicionales (iniciales, finales, excesivos) de las cadenas de texto con la función TRIM

En Excel, para eliminar los espacios iniciales, finales y adicionales de las cadenas de texto, la sencilla función TRIM puede ayudarte. Esta función elimina todos los espacios excepto los espacios simples entre palabras.

Por favor, introduce la siguiente fórmula en una celda en blanco:

=TRIM(A2)

Luego, arrastra el controlador de relleno hacia abajo para copiar la fórmula en otras celdas. Ahora, puedes ver que todos los espacios iniciales, finales y los espacios adicionales entre las palabras se han eliminado de una vez, tal como se muestra en la captura de pantalla:


 Eliminar todos los espacios de las cadenas de texto

Si desea eliminar todos los espacios en blanco de las cadenas de texto, la siguiente función SUSTITUIR y la característica Buscar y reemplazar pueden hacerle el favor.

Al utilizar la función SUSTITUIR

Puede usar la función SUSTITUIR para reemplazar todos los espacios por nada; por favor, aplique la siguiente fórmula en una celda en blanco:

=SUBSTITUTE(A2," ","") 

Luego, arrastra el controlador de relleno hacia abajo para copiar esta fórmula en otras celdas que necesites, y todos los espacios se eliminarán, como se muestra en la siguiente captura de pantalla:


Al utilizar la función Buscar y Reemplazar

De hecho, la función "Buscar y reemplazar" en Excel también puede ayudarte a eliminar todos los espacios de las celdas seleccionadas. Por favor, sigue los siguientes pasos:

1. Seleccione el rango de datos del que desea eliminar todos los espacios.

2. Luego, haz clic en "Inicio" > "Buscar y seleccionar" > "Reemplazar" (o presiona las teclas "Ctrl + H") para abrir el cuadro de diálogo "Buscar y reemplazar". En el cuadro de diálogo "Buscar y reemplazar" abierto, realiza las siguientes operaciones:

  • Presione la "barra espaciadora" en el campo "Buscar lo siguiente";
  • En el campo "Reemplazar con", deja este campo vacío.

3. Luego, haz clic en el botón "Reemplazar Todo", todos los espacios en blanco en las celdas seleccionadas se eliminarán de una vez. Ver captura de pantalla:


 Elimina todo tipo de espacios de las cadenas de texto con una función poderosa

"Kutools para Excel" tiene una función poderosa: "Eliminar espacios", con esta utilidad, no solo puedes eliminar los espacios al principio, los espacios al final y los espacios excesivos, sino también todos los espacios de los rangos seleccionados en un solo cuadro de diálogo, lo que aumentará tu productividad laboral.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Seleccione el rango de datos del que desea eliminar los espacios y, a continuación, haga clic en "Kutools" > "Texto" > "Eliminar espacios". Vea la captura de pantalla:

2. En el cuadro de diálogo "Eliminar espacios", seleccione el tipo de espacio que desea eliminar en "Tipo de espacio":

  • Para eliminar los espacios iniciales, seleccione la opción "Espacios al principio";
  • Para eliminar los espacios al final, seleccione la opción "Espacios al final".
  • Para eliminar los espacios iniciales y los espacios finales a la vez, seleccione la opción "Espacios iniciales y finales".
  • Para eliminar todos los espacios adicionales, seleccione la opción "Todos los espacios excesivos";
  • Para eliminar todos los espacios, seleccione la opción "Todos los espacios".

3. Luego, haga clic en el botón "Aceptar" o "Aplicar", y obtendrá el resultado que necesita.

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora


 Eliminar caracteres / texto antes o después de un carácter específico

En esta sección, presentaré algunas operaciones para eliminar el texto o los caracteres antes o después de la primera, última o n-ésima aparición de un carácter específico.

3.1 Eliminar texto antes o después del primer carácter específico

Si desea eliminar el texto antes o después del primer carácter específico, como un espacio o una coma, de una lista de cadenas de texto tal como se muestra en la captura de pantalla a continuación, aquí le proporcionaré dos métodos.

 Eliminar texto antes del primer carácter específico con una fórmula

Para eliminar texto o caracteres antes del primer carácter específico, puedes crear una fórmula basada en las funciones DERECHA, LARGO y ENCONTRAR; la sintaxis genérica es:

"=DERECHA(celda, LARGO(celda)-ENCONTRAR("carácter", celda))"
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar texto.

Por ejemplo, para eliminar todo lo que esté antes de la primera coma en las cadenas de la lista, debe aplicar la siguiente fórmula en una celda en blanco y luego arrastrarla hacia abajo hasta las celdas que necesite, consulte la captura de pantalla:

=RIGHT(A2,LEN(A2)-FIND(",",A2))

Nota: En la fórmula anterior: "A2" es la celda de la que desea eliminar texto; "," es el carácter específico según el cual desea eliminar el texto, puede cambiarlo a cualquier otro carácter según sea necesario.


 Eliminar texto después del primer carácter específico con una fórmula

Para eliminar todo después del primer carácter específico, puedes usar las funciones IZQUIERDA y ENCONTRAR para obtener el resultado; la sintaxis genérica es:

=IZQUIERDA(celda,ENCONTRAR("carácter",celda)-1)
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar el texto.

Ahora, por favor, introduzca la siguiente fórmula en una celda en blanco y luego arrastre el controlador de relleno hacia abajo hasta las otras celdas donde desea aplicar esta fórmula, y todos los caracteres después de la primera coma se eliminarán de inmediato, vea la captura de pantalla:

=LEFT(A2,FIND(",",A2)-1)


3.2 Eliminar texto antes o después de la N-ésima aparición de un carácter

A veces, las cadenas de texto contienen múltiples instancias de un delimitador específico; es posible que desee eliminar todos los caracteres antes o después de una instancia específica, como la segunda, tercera o cuarta según sea necesario. Para manejar este tipo de eliminación, puede usar los siguientes trucos:

 Eliminar texto antes de la N-ésima aparición de un carácter con una fórmula

Para eliminar el texto antes de la N-ésima aparición de un carácter específico, la siguiente fórmula puede ayudarte, la sintaxis genérica es:

=DERECHA(celda,LARGO(celda)-ENCONTRAR("#",SUSTITUIR(celda,"carácter","#",N)))
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar el texto;
  • "N": La aparición del carácter antes de la cual se eliminará el texto.

Por ejemplo, para eliminar todo antes de la segunda coma de las cadenas de texto, debe aplicar la siguiente fórmula:

=RIGHT(A2,LEN(A2)-FIND("#",SUBSTITUTE(A2,",","#",2)))

Nota: En la fórmula anterior: "A2" es la celda de la que desea eliminar texto; "," es el carácter específico según el cual desea eliminar el texto, puede cambiarlo a cualquier otro carácter según sea necesario; "2" indica la enésima coma antes de la cual desea eliminar el texto.

Luego, arrastra el controlador de relleno para copiar la fórmula en otras celdas, como se muestra en la captura de pantalla:


 Eliminar texto después de la N-ésima aparición de un carácter con una fórmula

Para eliminar el texto después de la N-ésima aparición de un separador específico, las funciones IZQUIERDA, SUSTITUIR y ENCONTRAR pueden ayudarte. La sintaxis genérica es:

=IZQUIERDA(celda, ENCONTRAR("#", SUSTITUIR(celda, "carácter", "#", N)) -1)
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar el texto;
  • "N": La aparición del carácter después de la cual se eliminará el texto.

Una vez que comprendas la sintaxis básica, copia o introduce la siguiente fórmula en una celda en blanco:

=LEFT(A2, FIND("#", SUBSTITUTE(A2, ",", "#", 2)) -1)

Nota: En la fórmula anterior: "A2" es la celda de la que desea eliminar texto; "," es el carácter específico según el cual desea eliminar el texto, puede cambiarlo a cualquier otro carácter según sea necesario; "2" indica la enésima coma después de la cual desea eliminar el texto.

Luego, arrastra el controlador de relleno para copiar la fórmula en otras celdas, y todos los caracteres después de la segunda coma se eliminarán de una vez, consulta la captura de pantalla:


 Eliminar texto antes o después de la N-ésima aparición de un carácter con una función definida por el usuario

Como puedes ver, puedes resolver los casos de eliminar texto antes o después de la N-ésima aparición de un carácter utilizando las funciones nativas de Excel en diferentes combinaciones. El problema es que necesitas recordar estas fórmulas complicadas. En este caso, crearé una Función Definida por el Usuario para cubrir todos los escenarios, por favor, hazlo de esta manera:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar texto antes o después de la N-ésima aparición de un carácter

Function RemoveTextOccurrence(Str As String, Delimiter As String, Occurrence As Integer, IsAfter As Boolean)
Dim xStr As String
Dim xStrLen, xF, xIntStart As Integer
xStr = Str
xStrLen = Len(xStr)
xIntStart = 1
For xF = 1 To Occurrence
xIntStart = InStr(xIntStart + 1, xStr, Delimiter, vbTextCompare)
If (xIntStart = 0) Or (xIntStart < 0) Then
    If IsAfter Then
    RemoveTextOccurrence = xStr
    Else
    RemoveTextOccurrence = ""
    End If
    Exit Function
End If
Next
If IsAfter Then
    RemoveTextOccurrence = Mid(Str, 1, xIntStart - 1)
Else
    RemoveTextOccurrence = Mid(Str, xIntStart + 1)
End If
End Function

3. Luego, cierra y sal de la ventana de código, regresa a la hoja de cálculo y utiliza las siguientes fórmulas:

Eliminar texto antes de la segunda aparición de una coma:

=RemoveTextOccurrence(A2, ", ", 2, FALSE)

A screenshot showing the result of using the RemoveTextOccurrence function in Excel to remove text before the second occurrence of a comma

Eliminar texto después de la segunda aparición de una coma

=RemoveTextOccurrence(A2, ", ", 2, TRUE)

A screenshot showing the result of using the RemoveTextOccurrence function in Excel to remove text after the second occurrence of a comma


3.3 Eliminar texto antes o después de la última aparición de un carácter

Si necesita eliminar todo el texto antes o después del último carácter específico, dejando solo las subcadenas antes o después de él, esta sección proporciona fórmulas para resolver este problema.

 Eliminar texto antes de la última aparición de un carácter con una fórmula

Para eliminar todos los caracteres antes de la última aparición de un carácter, la sintaxis genérica es:

=DERECHA(celda,LARGO(celda)-BUSCAR("#",SUSTITUIR(celda,"carácter","#",LARGO(celda)-LARGO(SUSTITUIR(celda,"carácter","")))))
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar el texto;

Ahora, si necesita eliminar el texto antes de la última aparición de una coma, copie o ingrese la siguiente fórmula en una celda en blanco:

=RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,",","#",LEN(A2)-LEN(SUBSTITUTE(A2,",","")))))

Nota: En la fórmula anterior: "A2" es la celda de la que desea eliminar texto; "," es el carácter específico según el cual desea eliminar el texto, puede cambiarlo a cualquier otro carácter según sea necesario.

Luego, arrastra el controlador de relleno para copiar la fórmula en otras celdas, y todos los caracteres antes de la última coma se eliminarán, como se muestra en la siguiente captura de pantalla:


 Eliminar texto después de la última aparición de un carácter con fórmulas

Si los valores de las celdas están separados por una cantidad variable de delimitadores y deseas eliminar todo después de la última aparición de ese delimitador, la sintaxis genérica es:

=IZQUIERDA(celda,ENCONTRAR("#",SUSTITUIR(celda,"carácter","#",LARGO(celda)-LARGO(SUSTITUIR(celda,"carácter",""))))-1)
  • "celda": La referencia de celda o cadena de texto de la que desea eliminar texto;
  • "char": El separador específico en el que deseas eliminar el texto;

Por favor, copie o ingrese la siguiente fórmula en una celda en blanco y luego arrastre el controlador de relleno hacia abajo para obtener los demás resultados que necesita, consulte la captura de pantalla:

=LEFT(A2,FIND("#",SUBSTITUTE(A2,",>","#",LEN(A2)-LEN(SUBSTITUTE(A2,",",""))))-1)

"Nota": En la fórmula anterior: "A2" es la celda de la que desea eliminar texto; "," es el carácter específico según el cual desea eliminar el texto, puede cambiarlo a cualquier otro carácter según sea necesario.


3.4 Eliminar texto entre paréntesis

Si tiene una lista de cadenas de texto con parte de los caracteres encerrados entre paréntesis, es posible que desee eliminar todos los caracteres dentro de los paréntesis, incluidos los propios paréntesis, como se muestra en la captura de pantalla a continuación. En esta sección, hablaremos sobre algunos trucos para resolver esta tarea en Excel.

 Eliminar texto entre paréntesis con la función Buscar y Reemplazar

En Excel, la función integrada Buscar y Reemplazar puede ayudarte a encontrar todos los textos dentro de los paréntesis y luego reemplazarlos con nada. Por favor, procede de la siguiente manera:

1. Seleccione la lista de datos de la que desea eliminar los textos entre paréntesis.

2. Luego, haz clic en "Inicio" > "Buscar y seleccionar" > "Reemplazar" (o presiona las teclas "Ctrl + H") para abrir el cuadro de diálogo "Buscar y reemplazar". En el cuadro de diálogo "Buscar y reemplazar", realiza las siguientes operaciones:

  • En el campo "Buscar lo siguiente", escriba "(*)" en el cuadro de texto;
  • En el campo "Reemplazar con", deja este campo vacío.

3. Luego, haga clic en el botón "Reemplazar Todo", todos los caracteres dentro de los paréntesis (incluyendo los paréntesis) en las celdas seleccionadas se eliminarán de una vez. Vea la captura de pantalla:

Consejos: La función "Buscar y Reemplazar" también funciona para dos o más pares de paréntesis dentro de las cadenas de texto.


 Eliminar texto entre paréntesis con fórmula

Además de la función Buscar y Reemplazar, también puedes usar una fórmula para resolver esta tarea en Excel; la sintaxis genérica es:

=SUSTITUIR(texto,MED(IZQUIERDA(texto,ENCONTRAR(")",texto)),ENCONTRAR("(",texto),LARGO(texto)),"")
  • "texto": La cadena de texto o la referencia de celda de la que desea eliminar caracteres.

Ahora, por favor, copie o introduzca la siguiente fórmula en una celda en blanco donde desee obtener el resultado:

=SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),"")

Luego, arrastra el controlador de relleno hacia abajo hasta las celdas donde deseas aplicar esta fórmula, y todos los textos dentro de los paréntesis, incluidos los paréntesis, se eliminarán de una vez, consulta la captura de pantalla:

Consejos: Si no hay paréntesis en el valor de la celda, se mostrará un error después de aplicar la fórmula anterior. Para ignorar el error, por favor, utiliza la siguiente fórmula:

=IFERROR(SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),""),A2)


 Eliminar texto entre paréntesis con una Función Definida por el Usuario

La fórmula anterior funciona bien para eliminar texto de un par de paréntesis. Sin embargo, si necesitas eliminar texto de múltiples pares de paréntesis dentro de las cadenas de texto, la fórmula no funcionará correctamente. Aquí, crearé una Función Definida por el Usuario simple para resolver esta tarea.

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar texto entre paréntesis

Function remtxt(ByVal str As String) As String
'Updateby Extendoffice
  While InStr(str, "(") > 0 And InStr(str, ")") > InStr(str, "(")
    str = Left(str, InStr(str, "(") - 1) & Mid(str, InStr(str, ")") + 1)
  Wend
  remtxt = Trim(str)
End Function

3. Regresa a la hoja de cálculo, introduce esta fórmula en una celda en blanco: "=remtxt(A2)", luego arrastra el controlador de relleno hacia abajo para aplicar la fórmula. Todo el texto dentro de los paréntesis, incluidos los propios paréntesis, se eliminará, como se muestra en la captura de pantalla:

A screenshot showing the result of using a custom VBA function in Excel to remove text between multiple pairs of parentheses


 Eliminar palabras de cadenas de texto

En ciertos casos, es posible que desees eliminar algunas palabras de una lista de celdas, como la primera o última palabra, o palabras duplicadas dentro de una celda. Para resolver este tipo de eliminaciones, esta sección te presentará algunos métodos.

4.1 Eliminar la primera o última palabra de la cadena de texto

Para eliminar la primera o última palabra de una lista de cadenas de texto, las siguientes fórmulas pueden ser de ayuda.

 Eliminar la primera palabra de la cadena de texto con fórmula

Para eliminar las primeras palabras de una lista de cadenas de texto, puedes crear una fórmula sencilla basada en las funciones DERECHA, LARGO y ENCONTRAR; la sintaxis genérica es:

=DERECHA(texto,LARGO(texto)-ENCONTRAR(" ",texto))
  • "texto": La cadena de texto o la referencia de celda de la que desea eliminar la primera palabra.

Ahora, por favor ingrese o copie la siguiente fórmula en una celda en blanco:

=RIGHT(A2,LEN(A2)-FIND(" ",A2))

Luego, arrastra el controlador de relleno hacia abajo para aplicar la fórmula a otras celdas, consulta la captura de pantalla:

Consejos: Si necesita eliminar las primeras N palabras de las celdas, utilice la siguiente fórmula:

=EXTRAE(ESPACIOS(texto),1+ENCONTRAR("~",SUSTITUIR(ESPACIOS(texto)," ","~",N)),255)
  • "texto": La cadena de texto o la referencia de celda de la que desea eliminar las primeras n palabras;
  • "N": Indica cuántas palabras desea eliminar desde el inicio de la cadena de texto.

Por ejemplo, para eliminar las primeras dos palabras de las celdas, copie o ingrese la siguiente fórmula en una celda en blanco para obtener el resultado que necesita, vea la captura de pantalla:

=MID(TRIM(A2),1+FIND("~",SUBSTITUTE(TRIM(A2)," ","~",2)),255)


  Eliminar la última palabra de una cadena de texto con fórmula

Para eliminar la última palabra de las cadenas de texto, también puedes usar una fórmula para resolver esta tarea, la sintaxis genérica es:

=IZQUIERDA(ESPACIOS(texto),ENCONTRAR("~",SUSTITUIR(texto," ","~",LARGO(ESPACIOS(texto))-LARGO(SUSTITUIR(ESPACIOS(texto)," ",""))))-1)
  • "texto": La cadena de texto o la referencia de celda de la que desea eliminar la última palabra;

Por favor, use la siguiente fórmula en una celda en blanco y luego arrastre el controlador de relleno hacia abajo para aplicar la fórmula a otras celdas, vea la captura de pantalla:

=LEFT(TRIM(A2),FIND("~",SUBSTITUTE(A2," ","~",LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))))-1)

Consejos: Para eliminar las últimas N palabras de una lista de celdas, la sintaxis genérica es:

=IZQUIERDA(texto,ENCONTRAR("~",SUSTITUIR(texto," ","~",LARGO(texto)-LARGO(SUSTITUIR(texto," ",""))-(N-1))))
  • "texto": La cadena de texto o la referencia de celda de la que desea eliminar las últimas n palabras;
  • "N": Indica el número de palabras que desea eliminar del final de la cadena de texto.

Supongamos que deseas eliminar las últimas 3 palabras de una lista de celdas, por favor, utiliza la siguiente fórmula para obtener el resultado, consulta la captura de pantalla:

=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))-(3-1))))


4.2 Eliminar caracteres o palabras duplicadas dentro de una celda

Cuando se eliminan valores o filas duplicados, Excel ofrece algunas opciones diferentes; sin embargo, cuando se trata de eliminar algunos caracteres o palabras duplicadas dentro de una celda determinada, puede que no haya ninguna buena función integrada para resolverlo. En este caso, esta sección ayudará a crear algunas Funciones Definidas por el Usuario para abordar este problema.

 Eliminar caracteres duplicados dentro de una celda utilizando una función definida por el usuario

Si tienes múltiples ocurrencias del mismo carácter en una celda, para eliminar los caracteres duplicados dentro de la celda y mantener solo las primeras ocurrencias, como se muestra en la siguiente captura de pantalla, puedes usar la siguiente Función Definida por el Usuario.

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar caracteres duplicados dentro de una celda

Function RemoveDupeschars(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
    xChar = VBA.Mid(xValue, i, 1)
    If xDic.Exists(xChar) Then
    Else
        xDic(xChar) = ""
        xOutValue = xOutValue & xChar
    End If
Next
RemoveDupeschars = xOutValue
End Function

3. Luego, cierra la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula =RemoveDupeschars(A2) en una celda en blanco junto a tus datos, y luego arrastra el controlador de relleno sobre las celdas donde deseas aplicar esta fórmula, consulta la captura de pantalla:

Nota: "A2" es la celda de datos de la cual desea eliminar los caracteres duplicados.

A screenshot showing the formula being applied in Excel to remove duplicate characters from a text string in a cell

Consejo: La función distingue entre mayúsculas y minúsculas, por lo que trata las letras en minúscula y mayúscula como caracteres diferentes.


 Eliminar palabras duplicadas dentro de una celda utilizando una Función Definida por el Usuario

Supongamos que tienes las mismas palabras o cadenas de texto en una celda y deseas eliminar todas las palabras iguales de la celda, tal como se muestra en la captura de pantalla a continuación. Puedes usar la siguiente Función Definida por el Usuario para resolver esta tarea en Excel.

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Eliminar palabras duplicadas dentro de una celda

Function RemoveDupeswords(txt As String, Optional delim As String = " ") As String
'Updateby Extendoffice
    Dim x
    With CreateObject("Scripting.Dictionary")
        .CompareMode = vbTextCompare
        For Each x In Split(txt, delim)
            If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
        Next
        If .Count > 0 Then RemoveDupeswords = Join(.keys, delim)
    End With
End Function

3. Luego, cierra la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula =RemoveDupeswords(A2,", ") en una celda en blanco junto a tus datos, y luego arrastra el controlador de relleno sobre las celdas donde deseas aplicar esta fórmula, consulta la captura de pantalla:

Nota: "A2" es la celda de la que desea eliminar las palabras duplicadas, y la coma y el espacio (", " ) son los delimitadores para separar las cadenas de texto; puede cambiarlos a otros delimitadores según sus necesidades.

A screenshot showing the formula being applied in Excel to remove duplicate words from a text string in a cell

Consejo: Esta función no distingue entre mayúsculas y minúsculas, las letras en minúscula y mayúscula se tratan como los mismos caracteres.


4.3 Recortar cadena de texto a N palabras

Si tiene una cadena de texto larga en una celda, a veces, es posible que desee recortar la cadena de texto a un número determinado de palabras, lo que significa mantener solo las primeras n palabras y cortar el resto. En esta sección, hablaremos sobre algunos trucos para ayudarle a realizar esta tarea en Excel.

 Recortar cadena de texto a N palabras con fórmula

Para recortar una cadena de texto a N palabras, puedes crear una fórmula basada en las funciones IZQUIERDA, ENCONTRAR y SUSTITUIR; la sintaxis genérica es:

=IZQUIERDA(texto,ENCONTRAR("~",SUSTITUIR(texto," ","~",N))-1)
  • "texto": La cadena de texto o la referencia de celda que desea recortar;
  • "N": El número de palabras que desea conservar desde el lado izquierdo de la cadena de texto dada.

Para manejar esta tarea, por favor copie o introduzca la siguiente fórmula en una celda en blanco:

=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",B2))-1)

Luego, arrastra el controlador de relleno hacia abajo para aplicar esta fórmula a otras celdas, consulta la captura de pantalla:


 Recortar cadena de texto a N palabras con Función Definida por el Usuario

Además de la fórmula anterior, también puedes crear una Función Definida por el Usuario para resolver esta tarea, sigue estos pasos:

1. Mantenga presionadas las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic for Applications".

2. Haz clic en "Insertar" > "Módulo" y pega el siguiente código en la Ventana del Módulo.

Código VBA: Recortar cadena de texto a N palabras

Function GetNWords(StrWords As String, Num_of_Words As Integer) As String
'Updateby Extendoffice
Dim xArr
Dim xRes As String
Dim xF As Integer
xStr = StrWords
If (Num_of_Words < 1) Then
    GetNWords = ""
    Exit Function
End If
xArr = Split(xStr, " ")
xRes = ""
On Error Resume Next
For xF = 0 To UBound(xArr)
    If Trim(xArr(xF)) <> "" Then
    Num_of_Words = Num_of_Words - 1
        If xRes = "" Then
            xRes = Trim(xArr(xF))
        Else
            xRes = xRes & " " & Trim(xArr(xF))
        End If
    End If
    If Num_of_Words = 0 Then Exit For
Next
If Num_of_Words = 0 Then
    GetNWords = xRes & "..."
Else
    GetNWords = xRes & "..."
End If
End Function

3. Luego, cierra y sal de la ventana de código, regresa a la hoja de cálculo e introduce esta fórmula: =GetNWords(A2,B2) en una celda en blanco, y luego arrastra el controlador de relleno hacia abajo para aplicar esta fórmula a otras celdas; solo se conservarán las primeras palabras específicas tal como se muestra en la siguiente captura de pantalla:

A screenshot showing the result after applying the User Defined Function to trim the text string to a specific number of words in Excel

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

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!