Je ne me sers pas de la feuille Analyse
function dernModif() {
var fileID = SpreadsheetApp.getActiveSpreadsheet().getId();
var file = DriveApp.getFileById(fileID);
var lastUpdate = file.getLastUpdated();
var now = new Date()
var oldSem = lastUpdate.getWeekNumber()
var newSem = now.getWeekNumber()
if (oldSem == newSem){return}
var f = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Planning moyen terme')
var cel = f.getRange('T8:AA'+f.getLastRow())
var valeurs = cel.getValues()
for (var i=0;i<valeurs.length;i++){
if (valeurs[i][0]!=''){
valeurs[i][0]=valeurs[i][0]+valeurs[i][1]
for (var j=1;j<valeurs[0].length-1;j++){
valeurs[i][j]=valeurs[i][j+1]
}
valeurs[i][valeurs[0].length-1]=0
}
}
cel.setValues(valeurs)
Browser.msgBox('Mise à jour planning effectuée !')
}
Date.prototype.getWeekNumber = function(){
var d = new Date(Date.UTC(this.getFullYear(), this.getMonth(), this.getDate()));
var dayNum = d.getUTCDay() || 7;
d.setUTCDate(d.getUTCDate() + 4 - dayNum);
var yearStart = new Date(Date.UTC(d.getUTCFullYear(),0,1));
return Math.ceil((((d - yearStart) / 86400000) + 1)/7)
};
Il faut mettre un déclencheur à l'ouverture du fichier sur la fonction dernModif
Je n'ai pas fait de boucle jusqu'à ce que les semaines correspondent. Si le fichier est ouvert une fois pas semaine cela fonctionnera.