Eliminación de duplicados mediante la API de JavaScript de Excel
En este artículo se proporciona un ejemplo de código que quita las entradas duplicadas en un intervalo mediante la API de JavaScript de Excel. Para obtener la lista completa de propiedades y métodos que admite el Range
objeto, vea Clase Excel.Range.
Eliminación de filas con entradas duplicadas
El método Range.removeDuplicates quita las filas con entradas duplicadas en las columnas especificadas. El método pasa por cada fila del intervalo desde el índice con valores más bajos hasta el índice con valores más altos del intervalo (de arriba abajo). Una fila se elimina si un valor de su columna o columnas especificadas apareció antes en el rango. Las filas que se encuentran en el rango de abajo de la fila eliminada se desplazan hacia arriba. removeDuplicates
no afecta la posición de las celdas fuera del rango.
removeDuplicates
toma number[]
que representa los índices de columna, que se verifican para detectar duplicados. Esta matriz tiene base cero y es relativa para el rango, no para la hoja de cálculo. El método también toma un parámetro booleano que especifica si la primera fila es un encabezado. Cuando true
es , la fila superior se omite al considerar duplicados. El removeDuplicates
método devuelve un RemoveDuplicatesResult
objeto que especifica el número de filas eliminadas y el número de filas únicas restantes.
Al usar el método de removeDuplicates
un rango, tenga en cuenta lo siguiente.
removeDuplicates
considera valores de celdas, no resultados de funciones. Si dos funciones diferentes dan el mismo resultado, los valores de la celda no se consideran duplicados.- Las celdas vacías no son ignoradas por
removeDuplicates
. El valor de una celda vacía se trata como cualquier otro valor. Esto significa que las filas vacías contenidas dentro del rango se incluirán enRemoveDuplicatesResult
.
En el ejemplo de código siguiente se muestra la eliminación de entradas con valores duplicados en la primera columna.
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
let range = sheet.getRange("B2:D11");
let deleteResult = range.removeDuplicates([0],true);
deleteResult.load();
await context.sync();
console.log(deleteResult.removed + " entries with duplicate names removed.");
console.log(deleteResult.uniqueRemaining + " entries with unique names remain in the range.");
});
Datos antes de que se quiten las entradas duplicadas
Datos después de quitar entradas duplicadas
Vea también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de