Cómo eliminar duplicados dentro de una celda en Excel
En el mundo del análisis de datos, la organización es clave, y Excel es una herramienta poderosa que muchos utilizan para manejar información. Pero, ¿qué sucede cuando tus celdas están llenas de datos duplicados que complican tu análisis? Imagina tener una lista desordenada de nombres, correos electrónicos o cualquier tipo de información donde la repetición se vuelve un obstáculo. No te preocupes, ¡estás en el lugar correcto! En este artículo, te guiaremos a través de técnicas sencillas pero efectivas para eliminar esos duplicados dentro de una celda en Excel, devolviéndole la claridad y utilidad a tus datos. ¡Sigue leyendo y transforma tu trabajo en un abrir y cerrar de ojos!
Si eres usuario de Excel, seguro que en algún momento te has enfrentado al desafío de lidiar con datos duplicados en una celda. Estos duplicados pueden ser una molestia, ya que entorpecen las funciones y análisis de tus hojas de cálculo. Pero no te preocupes, ¡estamos aquí para ayudarte! En este artículo te enseñaremos cómo eliminar duplicados dentro de una celda en Excel, para que puedas mantener tus datos organizados y libres de repeticiones innecesarias. ¡No pierdas más tiempo buscando soluciones, sigue leyendo y descubre cómo simplificar tu trabajo en Excel!
Hay tres formas de buscar y eliminar duplicados dentro de una celda en Excel. Simplemente elija el que mejor se adapte a sus necesidades.
Cuando se trata de eliminar valores o filas duplicados, Microsoft Excel ofrece una variedad de opciones diferentes. Pero cuando se trata de eliminar texto idéntico dentro de una celda determinada, Excel proporciona… nada. Sin herramientas, sin funciones, sin fórmulas, sin nada. ¿Nos impedirá lograr nuestro objetivo? En ningún caso. Si Excel no tiene la función que necesitamos, escribamos la nuestra 🙂
Cómo eliminar palabras repetidas en una celda de Excel
Problema: Tiene las mismas palabras o cadenas de texto en una celda y le gustaría eliminar la segunda y todas las repeticiones posteriores.
Solución: una función personalizada definida por el usuario o una macro VBA.
>Función definida por el usuario para eliminar duplicados dentro de una celda
Para eliminar texto duplicado en una celda, puede utilizar la siguiente función definida por el usuario (UDF), denominada Eliminar palabras duplicadas:
Función Eliminar palabras duplicadas (texto Como Cadena, Opcional delimitador Como Cadena = » «) Como Cadena
Oscuro diccionario Como Objeto
Oscuro x, parte
Colocar diccionario = Crear objeto(«Scripting.Diccionario») diccionario.CompareMode = vbTextCompare
Para Cada X En Parte dividida (texto, delimitador) = Recortar (x)
Si parte <> «» Y No diccionario.Existe(parte) Entonces
diccionario.Agregar parte, Nada
Fin Si
Próximo
Si diccionario.Cuenta > 0 Entonces
RemoveDupeWords = Unirse(diccionario.claves, delimitador)
Demás
Eliminar palabras duplicadas = «»
Fin Si
Colocar diccionario = Nada
Fin Función
Cómo insertar el código de la función en su libro de trabajo
Para agregar el código anterior a su Excel, esto es lo que debe hacer:
Para obtener más información, consulte Cómo insertar código VBA en Excel.
Sintaxis de la función RemoveDupeWords
Nuestra función recién creada para eliminar texto duplicado en una celda tiene la siguiente sintaxis:
Eliminar palabras duplicadas (texto, [delimiter])
Dónde:
- Texto (obligatorio): una cadena o celda de la que desea eliminar el texto repetido.
- Delimitador (opcional): el delimitador por el que está separado el texto repetido. Si se omite, se utiliza un espacio para el delimitador.
La función es no entre mayúsculas y minúsculaslo que significa que las letras minúsculas y mayúsculas se tratan como los mismos caracteres.
Cómo utilizar la función RemoveDupeWords
Una vez que el código de la función se agrega a su libro de trabajo, puede usarlo en sus fórmulas de la misma manera que usa las funciones integradas de Excel.
Simplemente comience a escribir el nombre de la función después del signo igual y aparecerá en la fórmula intellisense. Haz doble clic en la función y la tendrás insertada en una celda. Defina los argumentos, escriba el paréntesis de cierre, presione Ingresary su fórmula estará completa.
>Por ejemplo, para eliminar palabras duplicadas separadas por una coma y un espacio de A2, ingrese la siguiente fórmula en B2 y luego arrástrela hacia abajo a través de tantas celdas como sea necesario:
=RemoveDupeWords(A2, «, «)
Como resultado, tendrá una lista de palabras o subcadenas únicas separadas por un coma y espacio:
>Si prefiere obtener una lista separada por comas, utilice solo una coma para el delimitador:
=RemoveDupeWords(A2, «,»)
>Si sus datos de origen están separados por un espacioel segundo argumento debe ser » » u omitirse:
=RemoveDupeWords(A2)
>Como cualquier otra función de Excel, nuestra UDF se recalcula automáticamente cuando cambian los datos de origen, por lo que sus resultados siempre estarán actualizados.
Macro de VBA para eliminar texto duplicado de varias celdas a la vez
Si desea eliminar texto repetido de varias celdas de una sola vez, puede llamar al Eliminar palabras duplicadas funcionar desde dentro de una macro. En este caso, el delimitador está codificado y tendrá que actualizar el código de la macro cada vez que cambie el delimitador. Alternativamente, puede escribir algunas variaciones de código para los delimitadores más comunes, por ejemplo, un espacio, una coma o una coma y espacio, y darle a sus macros nombres significativos, por ejemplo Eliminar DupesDelimSpace.
El código de la macro es el siguiente:
Público Sub Eliminar palabras duplicadas2()
Oscuro celúla Como Rango
Para Cada celúla En Aplicación.Selección celda.Valor = RemoveDupeWords(celda.Valor, «, «)
Próximo
Fin Sub
En el código anterior, el delimitador es un coma y espacio. Para utilizar un delimitador diferente, reemplace «, » con otro(s) carácter(es) en esta línea de código:
cell.Value = RemoveDupeWords(cell.Value, «, «)
Nota. Para que la macro funcione, su código y el Código de la función RemoveDupeWords deben colocarse en el mismo módulo.
Cómo utilizar la macro
Inserte el código de la macro en su propio libro de trabajo o abra nuestro libro de trabajo de muestra con el código y luego realice los siguientes pasos para ejecutar la macro.
Para obtener más detalles, consulte Cómo ejecutar una macro en Excel.
Nota. Porque la acción de una macro no se puede deshacer, recomendamos encarecidamente guardar su libro de trabajo justo antes de usar la macro. De esta manera, si algo sale mal, simplemente puede cerrar y volver a abrir el libro y volverá exactamente a donde estaba. O simplemente puede hacer una copia de las hojas de trabajo que podrían verse afectadas por la macro.
Cómo eliminar caracteres duplicados en una celda
Problema: Tiene varias apariciones del mismo carácter en una celda, mientras que cada celda solo debe contener una única aparición de un carácter determinado.
Solución: una función personalizada definida por el usuario o macro VBA.
>Función definida por el usuario para eliminar caracteres repetidos
Para eliminar caracteres duplicados dentro de una celda manteniendo solo las primeras apariciones, puede usar la siguiente función definida por el usuario, denominada Eliminar caracteres duplicados:
Función EliminarDupeChars(texto Como Cadena) Como Cadena
Oscuro diccionario Como Objeto
Oscuro carbonizarse Como Cadena
Oscuro resultado Como Cadena
Colocar diccionario = Crear objeto(«Scripting.Diccionario»)
Para yo = 1 A Len(texto) char = Medio(texto, i, 1)
Si No diccionario.Existe(char) Entonces
diccionario.Agregar carácter, Nada
resultado = resultado & carbonizarse
Fin Si
Próximo
RemoveDupeChars = resultado
Colocar diccionario = Nada
Fin Función
Para insertar el código de la función en su libro de trabajo, el pasos son exactamente iguales que en el ejemplo anterior.
Sintaxis de la función RemoveDupeChars
La sintaxis de esta función personalizada es lo más simple posible: solo se requiere un argumento:
EliminarDupeChars(texto)
Dónde texto es una cadena o celda de la que desea eliminar caracteres duplicados.
La función es distingue mayúsculas y minúsculas y trata las letras minúsculas y mayúsculas como caracteres diferentes.
Cómo utilizar la función RemoveDupeChars
Todo lo que dijimos sobre el uso de RemoveDupeWords es cierto para Eliminar caracteres duplicados. Así que, sin entrar demasiado en teoría, vayamos directamente a un ejemplo.
Para eliminar caracteres duplicados de la columna A que comienza en A2, ingrese esta fórmula en B2 y cópiela:
=RemoveDupeChars(A2)
Como puede ver en la imagen a continuación, la función maneja con éxito diferentes tipos de caracteres, incluidas letras, dígitos y símbolos especiales:
>
Consejo. Si tus personajes están separados entre sí por algún delimitador como un espacio, una coma o un guión, luego utilice el Eliminar palabras duplicadas funcionar como se muestra en el ejemplo anterior.
Macro de VBA para eliminar los mismos caracteres de una celda
Como Eliminar palabras duplicadasel Eliminar caracteres duplicados La función también se puede llamar desde una macro:
Público Sub EliminarDupeChars2()
Oscuro celúla Como Rango
Para Cada celúla En Aplicación.Selección celda.Valor = RemoveDupeChars(celda.Valor)
Próximo
Fin Sub
Debido a que esta UDF no utiliza ningún delimitador, no tendrá que realizar ningún ajuste en el código.
Nota. Para que la macro funcione, su código y el código de Eliminar DupeChars UDF debe colocarse en el mismo módulo en el editor VBA.
Cómo utilizar la macro
Suponiendo que ya insertó el código de la macro en su libro de trabajo o abrió nuestro libro de trabajo de muestra que contiene el código, inicie la macro de esta manera.
Elimine subcadenas duplicadas con Ultimate Suite
Al comienzo de este tutorial, se mencionó que Microsoft Excel no tiene una función incorporada para eliminar duplicados dentro de una celda. ¡Pero nuestra Ultimate Suite sí!
Puedes encontrarlo en el Eliminador de duplicados menú desplegable en el Datos de Ablebits pestaña, en la Deduplicar grupo. Si el Eliminar subcadenas duplicadas La opción no aparece en su Excel, asegúrese de tener instalada la última versión de Ultimate Suite (puede descargar una prueba gratuita aquí).
>Para eliminar palabras o texto repetidos de varias celdas en 5 segundos (un segundo por paso :), esto es lo que debes hacer:
¡Hecho! Sin jugar con VBA o fórmulas, solo resultados rápidos y precisos.
>Para obtener más información sobre este increíble complemento, visite su página de inicio. O mejor aún, descargue una versión de evaluación a continuación y pruébela.
Así es como eliminar texto duplicado en una celda. ¡Te agradezco por leer y espero verte en nuestro blog la próxima semana!
descargas disponibles
Ejemplos para eliminar duplicados en la celda (archivo .xlsm)
Versión totalmente funcional de 14 días de Ultimate Suite (archivo .exe)
Aldnijspm: ¡Qué buen artículo! Nunca pensé que eliminar duplicados en una sola celda podría ser tan fácil. Una vez me volví loco tratando de limpiar una lista gigante y me llevó horas. Gracias a este post ahora sé cómo hacerlo rápido y sin complicaciones.