Copier un fichier avec Apps Script
Il est possible de créer une copie d'un document Google Sheets très facilement avec Apps Script.
Copier dans le même dossier
Pour copier le fichier en cours d'utilisation dans le même dossier, exécutez ce script :
function copierFichier() {
// Source : https://www.sheets-pratique.com/fr/codes/copier-fichier
const fichier = DriveApp.getFileById(SpreadsheetApp.getActive().getId());
const nomNouveauFichier = 'NOM_NOUVEAU_FICHIER';
fichier.makeCopy(nomNouveauFichier);
}
Ou plus court :
function copierFichier() {
// Source : https://www.sheets-pratique.com/fr/codes/copier-fichier
DriveApp.getFileById(SpreadsheetApp.getActive().getId()).makeCopy('NOM_NOUVEAU_FICHIER');
}
Pour copier un fichier autre que celui en cours d'utilisation, remplacez
SpreadsheetApp.getActive().getId()
par l'ID du fichier à copier.Copier dans un autre dossier
Pour copier le fichier en cours d'utilisation dans un dossier différent, remplacez ID_DOSSIER par l'ID du dossier cible et exécutez ce script :
function copierFichier() {
// Source : https://www.sheets-pratique.com/fr/codes/copier-fichier
const fichier = DriveApp.getFileById(SpreadsheetApp.getActive().getId());
const dossier = DriveApp.getFolderById('b9bjDqLiUSqh1qhd0J0pA24kaHDVGdi66');
const nomNouveauFichier = 'NOM_NOUVEAU_FICHIER';
fichier.makeCopy(nomNouveauFichier, dossier);
}
Ou plus court :
function copierFichier() {
// Source : https://www.sheets-pratique.com/fr/codes/copier-fichier
DriveApp.getFileById(SpreadsheetApp.getActive().getId()).makeCopy('NOM_NOUVEAU_FICHIER', DriveApp.getFolderById('ID_DOSSIER'));
}
Vous pouvez récupérer l'ID d'un dossier en ouvrant le dossier dans Google Drive :
https://drive.google.com/drive/folders/b9bjDqLiUSqh1qhd0J0pA24kaHDVGdi66
Copiez ensuite l'ID qui se trouve dans son URL, dans cet exemple l'ID est :
b9bjDqLiUSqh1qhd0J0pA24kaHDVGdi66