apps script: rendre une macro un peu plus généraliste

gaston gaston
1 618 contributions
Membre depuis le 01/03/2001
Envoyé le 08/11/2023 à 21:34


Bonjour,

Cela fait un moment que je me pose cette question:

j'ai quelques macro qui reviennent souvent, avec pour seule différence le nom de la feuille que je traite, et cela dépend parfois de la valeur d'une cellule.
alors je les duplique et je change le nom de la feuille, mais je me dis qu'il doit exister une manière plus simple de faire autrement
Donc voici ma question: quel est le principe pour transformer une macro afin de pouvoir utiliser celle-ci sur n'importe quelle feuille que je nommerai lors de l'appel de la macro ?
de même si c'est une question de cellule...
carpe diem

Répondre à ce message

Bipbipcoyote Bipbipcoyote
4 287 contributions
Membre depuis le 06/03/2001
Envoyé le 08/11/2023 à 22:40 Modifié par Bipbipcoyote


Bonjour,
tu dois transmettre le nom de la feuille, de la cellule, (ou autre chose dont tu as besoin) en paramètre dans l'appel de la fonction

function appelAutreFonction() {
var maFeuille = "Feuille 1";
var maCellule = "A5";
afficherNomFeuille(maFeuille,maCellule);
}

function autreAppel() {
var maFeuille = "Feuille 2";
var maCellule = "D2";
afficherNomFeuille(maFeuille,maCellule);
}

//ci-dessous la procédure principale qui pourrait être beaucoup plus longue
function afficherNomFeuille(uneFeuille,uneCellule)
{
const feuille = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(uneFeuille);
const cellule = feuille.getRange(uneCellule);
cellule.setValue('valeur');
}

Visitez mon Site Google est mon ami, il répond mieux que moi, posez lui d'abord vos questions
gaston gaston
1 618 contributions
Membre depuis le 01/03/2001
Envoyé le 09/11/2023 à 16:10


Bonjour,

ah bon ? ça n'est pas plus compliqué que cela ? [:o]

carpe diem
Bipbipcoyote Bipbipcoyote
4 287 contributions
Membre depuis le 06/03/2001
Envoyé le 10/11/2023 à 11:14


Bonjour,
non pas plus compliqué, en principe avec javascript il ne se tracasse pas du type de données, sous Excel par exemple il faut ajouter le type de donnée (string, integer, double, etc...) par exemple - suivre le lien Cela dépend un peu du langage utilisé
Visitez mon Site Google est mon ami, il répond mieux que moi, posez lui d'abord vos questions

Participer à cette discussion

« Retour sur la liste des messages de ce forum