déclencher le script (formule personalisée) suite à l'ajout de données
Publié : 18 févr. 2023 17:13
Bonjour,
Je n’ai pas trouvé comment faire exécuter plusieurs scripts lorsque la valeur de la cellule change ou par d’autres moyens ?
C’est à dire au fur et à mesure que j’entre des données en fin de ligne, j’aimerai que les fonctions personnalisées qui sont en début de ligne recalcul automatiquement les valeurs.
Exactement de la même manière que cette fonction : =NBVAL() . Lors d’ajout de données dans sa plage de calcule le résultat se met automatiquement à jour. actuellement j’essai cela :
les autres codes à déclencher sont tous de cette façon :
Lien vers le fichier exemple :https://docs.google.com/spreadsheets/d/ ... edit#gid=0
Merci
Je n’ai pas trouvé comment faire exécuter plusieurs scripts lorsque la valeur de la cellule change ou par d’autres moyens ?
C’est à dire au fur et à mesure que j’entre des données en fin de ligne, j’aimerai que les fonctions personnalisées qui sont en début de ligne recalcul automatiquement les valeurs.
Exactement de la même manière que cette fonction : =NBVAL() . Lors d’ajout de données dans sa plage de calcule le résultat se met automatiquement à jour. actuellement j’essai cela :
Code : Tout sélectionner
function maFonction() {
var maValeur = SpreadsheetApp.getActiveSheet().getRange("H1").getValue();
if(maValeur == "réinitialiser"){
// ici mettre la fonction que vous souhaitez
sousterre();
surface();
repos();
disponible();
}
}
Code : Tout sélectionner
function sousterre(){
// définir les variables
var ss = SpreadsheetApp.getActiveSheet()
var n= ss.getLastColumn();
for(var C1=n;C1>=1;C1--) { // boucle de n à 1
if(ss.getRange(ss.getCurrentCell().getRow(),C1).getValue() == "ST"){
// on a trouvé la cellule qui contient ST
for(var C2=C1;C2>=1;C2--){
if(ss.getRange(ss.getCurrentCell().getRow(),C2).getValue() != "ST"){
return C1-C2;
}
}
}
}
}
Merci