compteur de macro

a marqué ce sujet comme résolu.

bonjour, pour devellopper une base de données j’utilise une macro qui tri et envoie les donnes dans les feuille correspondante grace à l’utilisation d’une variable. j’aimerais associer à chaque numero de donnée un n° d’operation afin de pouvoir m’y retrouver, pour ce faire j’ai besoin d’un compteur qui s’incremente et qui ensuite s’affiche dans un champ j’ai reussi à creer la variable compteur et à l’afficher dans une cellule mais il n’avance pas il reste à 1. je ne sait si c’est qui ne s’incremente pas ou qui se reinitialse à la valeur de depart à chaque action! voici le code:

/** @OnlyCurrentDoc */
var compteur=1;

function macro_1() {
  let feuille_source = SpreadsheetApp.getActive().getSheetByName('formulaire');
  let feuille_cible = SpreadsheetApp.getActive().getSheetByName(feuille_source.getRange('b2').getValue());
  feuille_source.getRange('A5').activate();
  feuille_source.getCurrentCell().setValue(compteur);
  feuille_source.getRange('a5:i5').copyTo(feuille_cible.getRange('A'+ (feuille_cible.getLastRow() + 1)), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
  feuille_source.getRange('a5:i5').clear({contentsOnly: true, skipFilteredRows: true});
  compteur++;

}

quelqu’un aurais peux etre un eclaircicement merci d’avance

+0 -0

D’après ce que je comprends, tu augmentes la valeur de compteur après avoir enregistré sa valeur.

De plus, la vatiable compteur est définie à 1, je pense donc qu’à chaque appel de la macro il y a un risque que la valeur de compteur se réinitialise. À mon avis, tu devrais aller chercher la valeur de compteur dans la feuille, faire l’opération, monter la valeur de compteur de 1 puis l’enregistrer dans la feuille.

+0 -1

merci à moté et elegance pour leur reponse mais pour repondre à moté, es données sont dans plusieurs feuilles daonc je voudrais une variable teorique, c’est trop compliqué d’aller la chercher dans toutes les feuilles.! quand à elegance, je suis debutant en programmation, je ne comprend pas bien la ntion de static!! j’ai bien fait qq recherche mais cela semble s’applique au js general, or je ne travail que dans app script dont je ne connais a peine le fonctionnement theorique!

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte