M365Con 2027 – conferencia online gratuita · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Cómo eliminar duplicados en Excel: comando, fórmulas y Power Query

Por ·

Cómo eliminar duplicados en Excel: usa Datos, Quitar duplicados, o conserva los datos originales con UNIQUE, fórmulas y Power Query. Pasos, límites y errores comunes.

Traducido automáticamente con IA a partir de la publicación original. Lee el original en inglés

Para eliminar duplicados en Excel, selecciona tus datos, ve a Datos > Quitar duplicados, marca las columnas que determinan qué se considera duplicado y selecciona Aceptar. Excel elimina cada fila que repite los valores en esas columnas y conserva la primera. Este artículo está pensado para usuarios de Excel que limpian listas, exportaciones e informes y quieren elegir el método adecuado. Primero verás el comando, después formas de revisar duplicados antes de eliminarlos, luego opciones que mantienen intactos los datos de origen y, por último, algunas rutas de automatización para tareas repetitivas.

Puntos clave

  • Selecciona tus datos, abre Datos y después Quitar duplicados, marca las columnas que definen un duplicado y selecciona Aceptar. Excel elimina la fila completa y conserva la primera coincidencia.
  • La eliminación es permanente, así que copia primero los datos a otra hoja. Ctrl+Z solo funciona hasta que hagas otra acción.
  • Excel compara lo que se muestra en la celda, de modo que 3/8/2006 y 8 mar 2006 se consideran valores distintos. Limpia los formatos antes.
  • Si quieres revisar los duplicados antes de eliminarlos, resáltalos con formato condicional o márcalos con una columna auxiliar que use CONTAR.SI.
  • UNIQUE y Power Query te dan una lista limpia sin tocar los datos de origen, y Power Query repite la limpieza en cada actualización.

Excel tiene más de una herramienta para esto porque "duplicado" puede significar cosas distintas. A veces es una fila totalmente idéntica. Otras veces es el mismo ID de cliente con un número de teléfono diferente. Decide a cuál te refieres antes de hacer clic en nada.

Eliminar duplicados con el comando de la pestaña Datos

Es la ruta más rápida y la que necesita la mayoría de la gente. Sigue el artículo de Microsoft sobre filtrar valores únicos o quitar valores duplicados.

  1. Haz una copia de seguridad de los datos. Copia el rango a otra hoja o libro. Microsoft lo deja claro: los duplicados se eliminan de forma permanente.
  2. Selecciona el rango. Haz clic en cualquier celda de tus datos, en una tabla de Excel, o selecciona el rango tú mismo. Solo se modifica el rango o la tabla seleccionados. Las celdas fuera de ellos permanecen como están.
  3. Abre el comando. Ve a Datos y selecciona Quitar duplicados en el grupo Herramientas de datos.
  4. Elige las columnas. En el cuadro de diálogo, marca las columnas que Excel debe comparar. Puedes usar Seleccionar todo o Anular selección de todo. Si tu primera fila contiene los nombres de las columnas, deja marcada la casilla Mis datos tienen encabezados.
  5. Selecciona Aceptar. Excel muestra un mensaje con el número de valores duplicados eliminados y el número de valores únicos que quedan.

Presta atención al paso 4, porque es el que más confunde. Una fila solo es un duplicado cuando coinciden todas las columnas que marcaste. Imagina una lista con ID, Nombre y Precio. Si marcas ID y Nombre pero no Precio, dos filas con el mismo ID y nombre se consideran duplicados aunque sus precios sean distintos, y Excel elimina la segunda fila completa, incluido el precio. Si quieres conservar todas las filas en las que algo difiera, marca todas las columnas. Si el ID por sí solo define un registro, marca solo el ID, y ten en cuenta lo que vas a eliminar.

Pulsa Ctrl+Z justo después del comando si el resultado no parece correcto. No confíes en ello más adelante.

Qué fila se conserva: ordena primero

Microsoft indica que se conserva la primera aparición y se eliminan las filas idénticas posteriores. Eso significa que el orden de las filas decide el resultado. Si tienes una lista de contactos con varias entradas por persona y quieres conservar la más reciente, ordena por fecha, de más reciente a más antigua, y después ejecuta Quitar duplicados. Si quieres conservar la fila con la dirección de correo rellena, ordena para que esas filas aparezcan primero. Ordenar es una parte normal de la limpieza aquí, no un extra opcional.

Qué se considera idéntico

Excel compara lo que se muestra en la celda, no lo que está almacenado. En el ejemplo de Microsoft, 3/8/2006 y 8 mar 2006 se tratan como valores distintos, aunque la fecha sea la misma. Lo mismo ocurre con números con formatos diferentes o con texto que tiene un espacio al final. El artículo sobre cómo buscar y quitar duplicados también señala que los recuentos que Excel muestra después pueden incluir celdas vacías o espacios.

Antes de eliminar nada, haz que las celdas tengan el mismo aspecto. Aplica un único formato de fecha, elimina los espacios sobrantes (para ello sirve la función TRIM) y comprueba que los números no estén almacenados como texto. Las páginas de Microsoft no indican si el comando ignora mayúsculas y minúsculas, así que pruébalo en un rango pequeño si las mayúsculas son importantes para ti.

Cuando el comando no funciona

No puedes quitar duplicados de datos que tengan esquemas o subtotales. Quita primero el esquema y los subtotales y, después, ejecuta el comando.

Revisa los duplicados antes de eliminarlos

El consejo de Microsoft es filtrar o resaltar primero y eliminar después. Esto cuesta un minuto y evita la mayoría de los arrepentimientos.

Resaltar duplicados con formato condicional

  1. Selecciona las celdas que quieres comprobar.
  2. En la pestaña Inicio, abre Formato condicional, después Reglas para resaltar celdas y luego Valores duplicados.
  3. Elige un estilo de resaltado y selecciona Aceptar.

Ahora se colorea cada valor repetido. No puedes aplicar esto al área de valores de una tabla dinámica. Este método comprueba una columna cada vez, así que una fila que se repite solo en varias columnas no se resaltará. Para eso necesitas una columna auxiliar.

Marcar filas duplicadas con una columna auxiliar

Una columna auxiliar muestra VERDADERO o FALSO junto a cada fila. Te permite filtrar, revisar y después eliminar.

  1. Inserta una columna junto a tus datos y añade un encabezado como "¿Duplicado?".
  2. Si estás comprobando la columna A, escribe esto en B2: =CONTAR.SI(A$2:A2;A2)>1
  3. Arrastra la fórmula hacia abajo. La primera vez que aparece un valor obtienes FALSO. Cada aparición posterior obtiene VERDADERO.
  4. Filtra la columna auxiliar por VERDADERO. Revisa esas filas. Elimínalas si realmente son duplicados.

Como el rango A$2:A2 crece al copiar la fórmula hacia abajo, solo se marcan las entradas posteriores y la primera se deja intacta. Eso coincide con lo que hace Quitar duplicados.

Para comprobar varias columnas a la vez, crea una columna de clave que una los valores: =A2&"|"&B2&"|"&C2. Ejecuta el CONTAR.SI sobre esa clave. Pon un separador, como la barra vertical, entre los campos. Sin él, "12" más "34" y "1" más "234" se convierten en "1234" y parecen el mismo registro.

Filtrar también tiene un inconveniente. Si eliminas filas filtradas seleccionándolas, comprueba que solo estén seleccionadas las filas visibles y marcadas, y hazlo sobre una copia. En caso de duda, ordena la columna auxiliar y elimina de una vez el bloque de filas VERDADERO.

Obtener una lista sin duplicados y conservar el origen

A veces no quieres eliminar nada. Solo necesitas una lista limpia para una lista desplegable, un resumen o una importación. Tres opciones encajan aquí.

La función UNIQUE

En Excel para Microsoft 365, Excel 2024 y Excel 2021, =UNIQUE(A2:A100) devuelve todos los valores distintos del rango, y el resultado se expande a las celdas inferiores. Microsoft indica que la función también está disponible en Excel para la web y en las aplicaciones móviles. La sintaxis es =UNIQUE(array,[by_col],[exactly_once]):

  • array es el rango a revisar. Si contiene varias columnas, UNIQUE compara filas completas.
  • by_col es TRUE si quieres comparar columnas en lugar de filas. Omítelo para la comparación habitual por filas.
  • exactly_once es TRUE si quieres obtener solo las filas que aparecen una vez en los datos. Si lo omites, obtendrás todas las filas distintas.

El resultado se actualiza cuando cambia el origen. Si el origen es una tabla de Excel y usas referencias estructuradas, el rango de expansión se ajusta al añadir o eliminar filas. Para obtener una lista ordenada, envuélvela así: =SORT(UNIQUE(A2:A100)).

El par de argumentos opcionales importa más de lo que parece. =UNIQUE(A2:A100,,TRUE) devuelve los valores que aparecen exactamente una vez, lo cual es una pregunta distinta de "eliminar las copias adicionales". Pregúntate cuál necesitas.

Una limitación: las versiones anteriores de Excel (2019 y anteriores) no tienen UNIQUE. La página de Microsoft solo enumera las versiones mencionadas arriba.

Filtro avanzado

Funciona en todas las versiones de escritorio y copia el resultado en otra ubicación.

  1. Selecciona tus datos.
  2. Ve a Datos > Avanzadas en el grupo Ordenar y filtrar.
  3. Elige Copiar a otra ubicación.
  4. Introduce una celda en el cuadro Copiar en y marca Solo registros únicos.
  5. Selecciona Aceptar.

Tus datos originales permanecen donde están, y las filas únicas aparecen en la nueva ubicación.

El patrón de fórmula clásico

Si no puedes usar UNIQUE, introduce =IF(COUNTIF($A$2:A2,A2)=1,A2,"") en una columna nueva y arrástrala hacia abajo. Cada valor aparece una vez y las repeticiones se convierten en cadenas vacías. Copia la columna y pégala como valores, y luego filtra las celdas en blanco. Es engorroso, pero funciona en cualquier versión.

Gestionar coincidencias parciales y diferencias de mayúsculas

Los datos reales rara vez son una copia limpia. Hay tres situaciones que aparecen una y otra vez.

Duplicados exactos. Coinciden todas las columnas marcadas. El comando lo gestiona sin problemas.

Coincidencias parciales. La columna clave se repite, pero otros campos difieren, por ejemplo el mismo ID de cliente con dos direcciones distintas. Aquí tienes que decidir qué versión es la correcta. Ordena para que la correcta quede primero y, a continuación, elimina duplicados solo en la columna clave. O marca las repeticiones con la columna auxiliar y revísalas manualmente. Ninguna herramienta puede decirte qué dirección es la correcta.

Diferencias de mayúsculas y minúsculas. Según la documentación de Microsoft, Power Query distingue mayúsculas de minúsculas, así que "Apple" y "apple" no son duplicados allí. La solución sugerida es convertir la columna a mayúsculas o minúsculas con una transformación antes de eliminar duplicados. Eso cambia los valores almacenados, así que conserva la columna original si todavía necesitas la ortografía exacta.

Automatízalo: Power Query y VBA

Para una limpieza puntual, el comando es suficiente. Para un archivo que limpias cada semana, configura algo que se repita.

Power Query

Si tus datos proceden de un archivo CSV, una base de datos u otro libro, elimina los duplicados durante la importación. Power Query registra el paso y lo vuelve a ejecutar en cada actualización.

  1. Carga los datos en el Editor de Power Query. Si ya están en una hoja de cálculo, selecciona una celda de los datos y elige Consulta > Editar, o usa Datos > Obtener datos para cargar un origen nuevo.
  2. Haz clic en el encabezado de una columna para seleccionarla. Mantén pulsada Mayús o Ctrl para seleccionar más. Las columnas no tienen que estar juntas.
  3. Ve a Inicio > Quitar filas > Quitar duplicados.
  4. Cierra y carga el resultado.

La página de Microsoft sobre cómo conservar o quitar filas duplicadas en Power Query enumera estos pasos. Sus indicaciones sobre duplicados merecen atención: las columnas seleccionadas determinan qué se considera duplicado, y Power Query no garantiza que conserve la primera fila de un grupo. Si importa qué fila sobrevive, no te fíes solo de ordenar. Microsoft remite a su guía «Preserve sort» en el artículo de problemas comunes de Power Query. Una opción relacionada, Mantener duplicados, hace lo contrario: conserva solo las filas cuyos valores aparecen más de una vez, lo que resulta práctico para auditar una lista.

Si combinas dos tablas, piensa dónde debe ir la eliminación de duplicados. Quitar los duplicados de cada origen antes de la combinación mantiene la combinación pequeña y predecible. Quitarlos después de combinar limpia lo que la combinación ha generado. Elige según de dónde provengan tus duplicados y comprueba el número de filas en la vista previa antes de cargar.

Macro de VBA

Si repites la misma limpieza en libros que abres a diario, una macro es una opción. El objeto Range tiene un método RemoveDuplicates, documentado en la referencia de VBA de Microsoft. Recibe las columnas que se comparan e indica si la primera fila contiene encabezados. El ejemplo del propio Microsoft es:

ActiveSheet.Range("A1:C100").RemoveDuplicates Columns:=Array(1,2), Header:=xlYes

Eso compara las dos primeras columnas del bloque A1:C100 y trata la primera fila como encabezado. Para usarlo, pulsa Alt+F11, inserta un módulo, pega la línea dentro de un Sub y guarda el archivo como libro habilitado para macros (.xlsm). Ejecútala primero en una copia. Una macro borra con la misma permanencia que el comando, y Ctrl+Z no devolverá las filas. Es posible que tu equipo de TI también bloquee las macros, así que compruébalo antes de crear algo que tus compañeros no puedan ejecutar. Si quieres saber más sobre el lenguaje, la página de VBA reúne material relacionado.

Excel para la web y móviles

Los artículos de Microsoft sobre cómo quitar duplicados solo mencionan las versiones de escritorio de Excel (Microsoft 365, 2024, 2021, 2019 y 2016) y no dicen nada sobre la web ni las aplicaciones móviles. Microsoft no describe el comando Quitar duplicados para esas versiones, así que no construyas un proceso sobre él. Lo que Microsoft sí documenta para la web y los móviles es la función UNIQUE, así que úsala para obtener una lista limpia en esos dispositivos y realiza la eliminación permanente en el escritorio.

Errores comunes

  • Ejecutar el comando sin copia de seguridad. Una vez cerrado el archivo, las filas se pierden para siempre.
  • Marcar las columnas equivocadas. Dejar fuera una columna cambia qué filas se consideran duplicadas, y se elimina la fila completa, no solo la celda repetida.
  • Olvidar ordenar antes y preguntarte después por qué sobrevivió el registro antiguo en lugar del nuevo.
  • Comparar celdas que parecen iguales pero tienen formatos distintos, como fechas escritas de dos formas o texto con espacios al final.
  • Intentar ejecutar el comando sobre datos con esquema o subtotales. Quita primero esos elementos.
  • Usar UNIQUE con exactly_once en TRUE como forma de eliminar los sobrantes. Devuelve solo los valores que aparecen una vez, así que los valores repetidos desaparecen por completo del resultado.

Temas relacionados para explorar

  • Resalta los duplicados con formato condicional y marca las filas repetidas con una columna auxiliar con CONTAR.SI antes de eliminar nada. Ambos temas se tratan arriba.
  • Limpia los datos al importarlos. Un paso de Power Query evita duplicados en cada actualización y funciona bien con archivos CSV y otros sistemas.
  • Evita duplicados al introducir datos. La validación de datos con una fórmula personalizada puede configurarse para impedir que los usuarios escriban un valor que ya existe. Pruébala primero en una hoja pequeña.
  • Automatiza los trabajos repetitivos con una macro y aprende a ejecutarla de forma segura sobre una copia.
  • Combinar datos de varios orígenes, que es donde suelen aparecer los duplicados. Planifica el orden de la limpieza y la combinación.

Siguiente paso

Antes de tu próxima limpieza, copia los datos, resalta los duplicados con formato condicional y comprueba cuántos hay. Después ejecuta Quitar duplicados sobre la copia y compara los recuentos con los números que informa Excel.

Entidades en este artículo

Microsoft Excel Power Query Visual Basic for Applications (VBA)

Artículos relacionados

RSS