Cuando trabaja con datos de texto no estructurados en sus hojas de trabajo, a menudo necesita analizarlos para recuperar información relevante. Este artículo le enseñará algunas formas sencillas de eliminar cualquier cantidad de caracteres del lado izquierdo o derecho de una cadena de texto.
Cómo eliminar caracteres de la izquierda en Excel
Eliminar los primeros caracteres de una cadena es una de las tareas más comunes en Excel y se puede lograr con 3 fórmulas diferentes.
Eliminar el primer carácter en Excel
Para eliminar el primer carácter de una cadena, puede usar la función REEMPLAZAR o una combinación de las funciones DERECHA y LARGO.
REEMPLAZAR(cadena, 1, 1, «»)
Aquí, simplemente tomamos 1 carácter de la primera posición y lo reemplazamos con una cadena vacía («»).
DERECHA(cadena, LARGO(cadena) – 1)
En esta fórmula, usamos la función LEN para calcular la longitud total de la cadena y restarle 1 carácter. La diferencia se sirve a la DERECHA, por lo que extrae esa cantidad de caracteres del final de la cadena.
Por ejemplo, para eliminar el primer carácter de la celda A2, las fórmulas son las siguientes:
=REPLACE(A2, 1, 1, "")
=RIGHT(A2, LEN(A2) - 1)
Eliminar caracteres de la izquierda
Para eliminar los caracteres iniciales del lado izquierdo de una cadena, también utiliza las funciones REEMPLAZAR o DERECHA y LARGO, pero especifique cuántos caracteres desea eliminar cada vez:
REEMPLAZAR(cadena, 1, num_chars, «»)
O
DERECHA(cadena, LARGO(cadena) – num_chars)
Por ejemplo, para eliminar primeros 2 caracteres de la cadena en A2, las fórmulas son:
=REPLACE(A2, 1, 2, "")
=RIGHT(A2, LEN(A2) - 2)
Para eliminar primeros 3 caractereslas fórmulas toman esta forma:
=REPLACE(A2, 1, 3, "")
=RIGHT(A2, LEN(A2) - 3)
La siguiente captura de pantalla muestra la fórmula REEMPLAZAR en acción. Con RIGHT LEN, los resultados serían exactamente los mismos.
Función personalizada para eliminar los primeros n caracteres
Si no le importa usar VBA en sus hojas de trabajo, puede crear su propia función definida por el usuario para eliminar caracteres desde el principio de una cadena, llamada RemoveFirstChars. El código de la función es tan simple como esto:
Function RemoveFirstChars(str As String, num_chars As Long) RemoveFirstChars = Right(str, Len(str) - num_chars) End Function
Una vez que el código se inserta en su libro de trabajo (las instrucciones detalladas están aquí), puede eliminar los primeros n caracteres de una celda determinada utilizando esta fórmula compacta e intuitiva:
RemoveFirstChars(cadena, num_chars)
Por ejemplo, para eliminar el primero carácter de una cadena en A2, la fórmula en B2 es:
=RemoveFirstChars(A2, 1)
Desnudarse dos primeros caracteres de A3, la fórmula en B3 es:
=RemoveFirstChars(A4, 2)
Borrar los tres primeros caracteres de A4, la fórmula en B4 es:
=RemoveFirstChars(A4, 3)
Cómo eliminar caracteres de la derecha
Para eliminar caracteres del lado derecho de una cadena, también puede usar funciones nativas o crear una propia.
Eliminar el último carácter en Excel
Para eliminar el último carácter de una celda, la fórmula genérica es:
IZQUIERDA(cadena, LARGO(cadena) – 1)
En esta fórmula, resta 1 de la longitud total de la cadena y pasa la diferencia a la función IZQUIERDA para que extraiga esa cantidad de caracteres desde el principio de la cadena.
Por ejemplo, para eliminar el último carácter de la celda A2, la fórmula en B2 es:
=LEFT(A2, LEN(A2) - 1)
Eliminar caracteres de la derecha
Para eliminar un número determinado de caracteres del final de una celda, la fórmula genérica es:
IZQUIERDA(cadena, LARGO(cadena) – num_chars)
La lógica es la misma que en la fórmula anterior, y a continuación hay un par de ejemplos.
para quitar el últimos 3 caracteresuse 3 para num_chars:
=LEFT(A2, LEN(A2) - 3)
Para eliminar el últimos 5 caracteressuministre 5 para num_chars:
=LEFT(A2, LEN(A2) - 5)
Función personalizada para eliminar los últimos n caracteres en Excel
Si desea tener su propia función para eliminar cualquier cantidad de caracteres de la derecha, agregue este código VBA a su libro de trabajo:
Function RemoveLastChars(str As String, num_chars As Long) RemoveLastChars = Left(str, Len(str) - num_chars) End Function
La función se llama RemoveLastChars y su sintaxis apenas necesita explicación:
RemoveLastChars(cadena, num_chars)
Para darle una prueba de campo, deshagámonos del último carácter en A2:
=RemoveLastChars(A2, 1)
Además, eliminaremos el últimos 2 caracteres desde el lado derecho de la cuerda en A3:
=RemoveLastChars(A3, 2)
Para eliminar el últimos 3 caracteres de la celda A4, la fórmula es:
=RemoveLastChars(A4, 3)
Como puede ver en la siguiente captura de pantalla, ¡nuestra función personalizada funciona de manera brillante!
Cómo eliminar caracteres de derecha e izquierda a la vez
En una situación en la que necesite borrar caracteres en ambos lados de una cadena, puede ejecutar las dos fórmulas anteriores secuencialmente u optimizar el trabajo con la ayuda de la función MID.
MID(cadena, caracteres_izquierdos + 1, LEN(cadena) – (caracteres_izquierdos + caracteres_derechos)
Dónde:
- chars_left: el número de caracteres a eliminar desde la izquierda.
- chars_right – el número de caracteres a eliminar desde la derecha.
Suponga que desea extraer el nombre de usuario de una cadena como mailto:Sophia@gmail.com. Para ello, parte del texto debe eliminarse desde el principio (mailto: – 7 caracteres) y desde el final (@gmail.com – 11 caracteres).
Sirva los números anteriores a la fórmula:
=MID(A2, 7+1, LEN(A2) - (7+10))
…y el resultado no te hará esperar:
Para comprender lo que realmente está sucediendo aquí, recordemos la sintaxis de la función MID, que se usa para extraer una subcadena de cierto tamaño desde el medio de la cadena original:
MID(texto, núm_inicio, núm_caracteres)
El argumento de texto no plantea ninguna pregunta: es la cadena de origen (A2 en nuestro caso).
Para obtener la posición del primer carácter a extraer (start_num), agrega 1 al número de caracteres que se eliminarán desde la izquierda (7+1).
Para determinar cuántos caracteres devolver (num_chars), calcula el total de caracteres eliminados (7 + 11) y resta la suma de la longitud de la cadena completa: LEN (A2) – (7 + 10)).
Obtener el resultado como número
Independientemente de las fórmulas anteriores que utilice, el resultado siempre es texto, incluso cuando el valor devuelto contiene solo números. para devolver el resultado como un númeroenvuelva la fórmula central en la función VALOR o realice alguna operación matemática que no afecte el resultado, por ejemplo, multiplique por 1 o agregue 0. Esta técnica es especialmente útil cuando desea calcular más los resultados.
Suponga que ha eliminado el primer carácter de las celdas A2:A6 y desea sumar los valores resultantes. Sorprendentemente, una fórmula SUMA trivial devuelve cero. ¿Porque eso? Obviamente, porque estás sumando cadenas, no números. ¡Realice una de las siguientes operaciones y el problema se solucionará!
=VALUE(REPLACE(A2, 1, 1, ""))
=RIGHT(A2, LEN(A2) - 1) * 1
=RemoveFirstChars(A2, 1) + 0
Eliminar el primer o último carácter con Flash Fill
En Excel 2013 y versiones posteriores, hay una forma más fácil de eliminar el primer y el último carácter en Excel: la función Flash Fill.
- En una celda adyacente a la primera celda con los datos originales, escriba el resultado deseado omitiendo el primer o último carácter de la cadena original y presione Entrar.
- Comience a escribir el valor esperado en la siguiente celda. Si Excel detecta el patrón en los datos que está ingresando, seguirá el mismo patrón en el resto de las celdas y mostrará una vista previa de sus datos sin el primer/último carácter.
- Simplemente presione la tecla Intro para aceptar la vista previa.
Elimina personajes por posición con Ultimate Suite
Tradicionalmente, los usuarios de Ultimate Suite pueden manejar la tarea con unos pocos clics sin tener que recordar un puñado de fórmulas diferentes.
Para eliminar los primeros o los últimos n caracteres de una cadena, esto es lo que debe hacer:
- En la pestaña Datos de Ablebits, en el grupo Texto, haga clic en Remover > Quitar por Posición.
- En el panel del complemento, seleccione el rango de destino, especifique cuántos caracteres eliminar y presione Eliminar.
Por ejemplo, para quitar el primer carácter configuramos la siguiente opción:
Así es como eliminar una subcadena de izquierda o derecha en Excel. ¡Gracias por leer y espero verte en nuestro blog la próxima semana!
(archivo .xlsm)
Ultimate Suite – versión de prueba (archivo .zip)