Sauvegarder une plage de données

Bonjour le forum,

Afin de sauvegarder des données d'une feuille à une autre d'un même classeur, j'ai trouvé ce petit code :

function Saisie(){
  var doc = SpreadsheetApp.getActiveSpreadsheet();
  var f1 = doc.getSheetByName('Actions prioritaires');
  var f2 = doc.getSheetByName('Tableau récapitulatif des actions');
  var adresses = ["A14"];
  var destinations = ["B2"];
  /*f2.insertRowBefore(1);*/
  for (var i = 0; i < adresses.length; i++){
    f2.getRange(destinations[i]).setValue(f1.getRange(adresses[i]).getValue());
    }
}

Cependant, je n'arrive pas à l'adapter à une plage de données à sauvegarder et non à seulement des cellules.

Par exemple, je voudrai copier la plage A14:K38

image

Comment modifier le code ?

Merci d'avance =)

Bonjour,

Essayez peut-être ceci :

function copy() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var forigine = ss.getSheetByName('Actions prioritaires');
  var fdestination = ss.getSheetByName('Tableau récapitulatif des actions');
  var origine = forigine.getRange(14,1,24,11);
  var destination = fdestination.getRange(fdestination.getLastRow()+1);
  origine.copyTo(destination);
}

Bonjour et merci de votre réponse PierreLepinay,

J'ai essayé votre code mais j’obtiens le message d’erreur suivant :

image

Je ne comprends pas très bien la ligne 17, à quoi correspond le 14,1,24 et 11 ?

Merci d'avance =)

Voici le détail de la ligne 17 :

var origine = forigine.getRange(14,1,24,11);

on crée une variable origine, qui contient une plage de cellule, dans getRange l'ordre est le suivant : ligne départ, colonne départ, nombre de ligne, nombre de colonnes

Donc, 14,1,24,11 = départ de A14 jusqu'à K38

J'ai fait une erreur dans le code et ai oublié de reporter cette plage en destination, voici la correction :

function copy() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var forigine = ss.getSheetByName('Actions prioritaires');
  var fdestination = ss.getSheetByName('Tableau récapitulatif des actions');
  var origine = forigine.getRange(14,1,24,11);
  var destination = fdestination.getRange(fdestination.getLastRow()+1,1,24,11);
  origine.copyTo(

C'est exactement ce que je cherchais, merci beaucoup =)

Rechercher des sujets similaires à "sauvegarder plage donnees"