[Script] Copier a la 1ere cellule vide d'une colonne entre 2 fichiers

Bonjour,

J'ai deux fichiers: "un" et "deux".

Dans "un" j'ai un groupe de cellules (A2:E60) en feuille "sheet1".

Dans "deux" une feuille "sheet2" avec des cellules pleines entre A1 et A10.

Je voudrais copier le groupe de cellule (A2:E60) du fichier "un" de la feuille "sheet1" vers la 1ere cellule vide de la colonne A du fichier "deux" en feuille "sheet2".

Merci

Jack

// feuille source vers feuille destination
  destination.getRange(destination.getLastRow()+1,1,59,5).setValues(source.getRange('A2:E60').getValues());

Ce sont deux fichiers google sheet differents. Les feuilles ne sont pas dans le meme fichier.

Comment faire?

Ton code execute juste les feuilles qui se trouvent dans le meme fichier.

Ton code execute juste les feuilles qui se trouvent dans le meme fichier.

absolument pas ! il suffit de définir source et destination, par exemple

  var source = SpreadsheetApp.openById(getFileId("fichierOrigine")).getSheetByName('feuilleOrigine')
  var dest = SpreadsheetApp.openById(getFileId("fichierDestination")).getSheetByName('feuilleDestination')

avec

function getFileId(nomDuFicherRecherche) {
  var files = DriveApp.getFilesByName(nomDuFicherRecherche);
  while (files.hasNext()) {
    var file = files.next();
    return (file.getId())
  }
}

Bonjour,

Dans ton code il y a fichieroromigine et fichierdestination je peux juste mettre les noms des fichiers? Car je ne veux pas mettre les ID. Car ce sont des fichiers renouveller tous les jours.

merci

oui tu peux juste mettre les noms étant étendu que les anciens du fichier du même nom ont été supprimés (sinon il faudra balayer et faire la sélection sur la date d'enregistrement du fichier)

Bonjour,

peux tu me donner le code complet s'il te plait que je ne fasse pas d erreur?

Merci

Jack

essaie ceci (pas testé)

function importerFeuille() {
  var source = SpreadsheetApp.openById(getFileId('nom du fichier source')).getSheetByName('nom onglet source')
  var destination = SpreadsheetApp.openById(getFileId('nom du fichier destinataire')).getSheetByName('nom onglet destination')
  destination.getRange(destination.getLastRow()+1,1,59,5).setValues(source.getRange('A2:E60').getValues());
};
function getFileId(nomDuFicherRecherche) {
  var files = DriveApp.getFilesByName(nomDuFicherRecherche);
  while (files.hasNext()) {
    var file = files.next();
    return (file.getId())
  }
}

si le script est lié au fichier de destination

function importerFeuille() {
  var source = SpreadsheetApp.openById(getFileId('nom du fichier source')).getSheetByName('nom onglet source')
  var destination = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('nom onglet destination')
  destination.getRange(destination.getLastRow()+1,1,59,5).setValues(source.getRange('A2:E60').getValues());
};
function getFileId(nomDuFicherRecherche) {
  var files = DriveApp.getFilesByName(nomDuFicherRecherche);
  while (files.hasNext()) {
    var file = files.next();
    return (file.getId())
  }
}

j ai essaye le deuxieme code mais j ai une erreur

20:07:46    Avis    Exécution démarrée
20:07:52    Erreur    
TypeError: Cannot read property 'getRange' of null
m7    @ macros.gs:61
destination.getRange(destination.getLastRow()+1,1,59,5).setValues(source.getRange('A2:E60').getValues());

Cette ligne est en erreur

j ai copier le code dans le fichier source.

tu peux l adapter au fichier source stp et m envoyer le code.

si le cde est dans le fichier source

function exporterData() {
  var source = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('mySheet')
  var destination = SpreadsheetApp.openById(getFileId('nom du fichier')).getSheetByName('YourSheetName')
  destination.getRange(destination.getLastRow()+1,1,59,5).setValues(source.getRange('A2:E60').getValues());
};
function getFileId(nomDuFicherRecherche) {
  var files = DriveApp.getFilesByName(nomDuFicherRecherche);
  while (files.hasNext()) {
    var file = files.next();
    return (file.getId())
  }
}

testé approuvé !

Rechercher des sujets similaires à "script copier 1ere vide colonne entre fichiers"