Google Script - Addition entre colonne A et B en boucle

Bonjour,

J'ai le script ci-dessous qui fonctionne qui permet d'additionner les cases A1+B1, puis A2+B2 et ainsi des suite jusqu'à la dernière ligne du tableau.

Le résultat est ajouté en colonne C, dans A1, B1 et ainsi de suite....

Mon problème est le suivant:

Les chiffres en colonne A et B sont avec un format nombre (comportant des décimales) et s'ajoutent sans soucis dans sheet (sans script), avec une virgule qui sépare les décimales.

Avec le script, les décimales sont séparés d'un point et de ce fait je ne peux pas exploiter le résultat. Je suis obligé de remplacer tous les points , par des virgules, manuellement via la fonction CTRL+F.

De plus, si je change mes paramètres en Anglais, les résultats sont au bon format en relançant le script!!!!!!!!!

Avez- vous une solution en modifiant le script ci-dessous?

Merci beaucoup pour votre aide bien.

var values3 = sheet.getRange(1, 1, lr,1).getValues();
var values4 = sheet.getRange(1, 2, lr,1).getValues();
var results = [];

  //Add items to results
    for(var i=0; i<lr; i++){
        results[i] = [values3[i][0]+values4[i][0]];
    }

  //Post back to column E starting on row 1
  sheet.getRange(1, 3, lr, 1).setValues(results);

Bonjour,

Utilise replace

var values3 = sheet.getRange(1, 1, lr,1).getValues();
var values4 = sheet.getRange(1, 2, lr,1).getValues();
var results = [];

  //Add items to results
    var test;
    for(var i=0; i<lr; i++){
        test = values3[i][0]+values4[i][0];
        results[i] = test.replace(/./ig, ",");
    }

  //Post back to column E starting on row 1
  sheet.getRange(1, 3, lr, 1).setValues(results);

Bonne Journée

Bonjour Imoka,

Votre code ne marche pas malheureusement !

il dit que replace n'est pas une fonction.

Duc coup, j'ai essayé de trouver une solution mais cela ne marche pas, non plus !

Voici le code, avec vos conseils et l'essais de ma solution qui ne marche pas:

Merci pour votre aide

  // concatener montant colonne A et B en C
  var values3 = sheet.getRange(1, 1, lr,1).getValues();
var values4 = sheet.getRange(1, 2, lr,1).getValues();
var results = [];
var test;

  //Add items to results
    for(var i=0; i<lr; i++){
        test = values3[i][0]+values4[i][0];
        results[i] = test.string().replace(/./ig, ",");
    }

  //Post back to column E starting on row 1
  sheet.getRange(1, 3, lr, 1).setValues(results);

Bonjour,

Tester ceci pour "concatener" mais ne serait-ce pas pour "additionner" ?

function myFunction() { 
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Feuille 2");
var lr = sheet.getLastRow();
var values3 = sheet.getRange(1, 1, lr,1).getValues();
var values4 = sheet.getRange(1, 2, lr,1).getValues();
var results = [];

   //Add items to results
     var test;
     for(var i=0; i<lr; i++){
         test = values3[i][0]+" "+values4[i][0];
        results = test.toString().replace(".", ",");
        sheet.getRange(i+1, 3).setValue(results)

     }

}
20211017 122342 001

Merci Gilbert...ça fonctionne. vous êtes des champions !

Voici le code qui fonctionne:

  var lr = sheet.getLastRow();

  // concatener montant colonne A et B en C
  var values3 = sheet.getRange(1, 1, lr,1).getValues();
  var values4 = sheet.getRange(1, 2, lr,1).getValues();
  var results;
  var test;

  //Add items to results
  for(var i=0; i<lr; i++){
        test = values3[i][0]+values4[i][0];
        results = test.toString().replace(".", ",");
        sheet.getRange(i+1, 3).setValue(results)

     }

ce n'est donc pas pour concatener mais pour "additionner"

c'est ce qui me semblait aussi

Rechercher des sujets similaires à "google script addition entre colonne boucle"