Bonjour,
j'ai un fichier sheet de travail complexe que je souhaiterais partager à mes collègues afin qu'il soit utilisable à partir d'un modele.
Ce fichier dont le lien est ci-dessous (version très simplifiée) disposent de plusieurs onglets.
https://docs.google.com/spreadsheets/d/1n2Zg2aOcBzbYfa-qPBcbiBUfIW7XStOWnrPMa73T-6g/edit?usp=sharing
1er onglet "Liste des spreadsheets liées":
- Colonne A est listées toutes les URLs utilisées dans mon template mais qu'il faut remplacer par celles de la colonne B
- Colonne B est listées toutes les URLs que je souhaite utiliser à la place de celles de la colonne A
Autres onglets: Mes fichiers de travail qui disposent de centaines de formules sur un range large récupèrent des données via des importrange.
L'idée est que le script puisse récupérer les URLs de la colonne A de l'onglet "Liste des spreadsheets liées" et que via des boucles, il puisse modifier les URLs dans les formules par celles de la colonne B.
Sur ce forum, Mike m'avait communiqué ce script, qui permet de faire le job mais d'une manière manuelle (sans. boucle et changent led formules dans toutes les sheets):
// enable Sheets API at Advanced Google services
function traitement() {
const replaceConditions = {
"https://docs.google.com/spreadsheets/d/xxxxxxxxxxxx/edit#gid=0": "yyyyyyyyyyyyy",
"xxxxxxxxxxxx": "yyyyyyyyyyyyy",
};
const ss = SpreadsheetApp.getActiveSpreadsheet();
const requests = Object.entries(replaceConditions).map(([k, v]) => ({
findReplace: {
find: k.toString(),
replacement: v.toString(),
includeFormulas: true,
allSheets: true,
},
}));
Sheets.Spreadsheets.batchUpdate({ requests: requests }, ss.getId());
}
Pouveez vous m'aider à le modifier afin que les modifs soient automatique sur l'ensemble des onglets sauf sur l'onglet "Liste des spreadsheets liées"?
J'ai essayé mais je n'y arrive pas car celui-ci utilise l'API Google sheet ....
Merci encore une fois de votre aide.
Bonne journée Vincent