Bonjour,
En effet, il y avait un "return;" dans la boucle, ce qui la stoppait, je l'ai retiré ainsi qu'une simplification du code (retiré l'imbrication de if + raccourci des requêtes).
Voici le script final :
function verifierDoublon() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Date');
const ui = SpreadsheetApp.getUi();
const data = sheet.getRange('A1:A' + sheet.getLastRow()).getDisplayValues().flat()
var unique = {};
for (i=0;i<data.length;i++) {
var valeur = data[i];
if ((valeur !== null && valeur !== '' )&& unique[valeur]) {
sheet.getRange(i + 1, 1).setBackground('red'); // Met la cellule en rouge
ui.alert("Cette date existe déjà : " + valeur);
} else {
unique[valeur] = true;
}
}
}
Pour info, il est exectué par déclancheur, il est aussi possible de faire un auto-trigger à l'aide de onEdit(e)