Médiaforma

API JS dans Excel – Ajout de données dans un tableau

Partagez cet article sur vos réseaux

A titre d’exemple, nous allons ajouter une ligne sous les lignes existantes et une colonne qui calcule le montant total en multipliant les cellules Nombre et Prix :

Voici le code utilisé :

async function ajoutDonnees() {

  await Excel.run(async function(context) {

    let feuille = context.workbook.worksheets.getActiveWorksheet();

    let t = feuille.tables.getItem("ventes");

    let nouveau = [["Office 2019",13,1400]];

    t.rows.add(null, nouveau);

    t.columns.add(null, [

      ["Total"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"],

      ["=[Nombre]*[Prix]"]

    ]);

  });

}

Ce code est assez simple à comprendre.

Après avoir récupéré la feuille active :

let feuille = context.workbook.worksheets.getActiveWorksheet();

Le tableau ventes est copié dans la variable :

let t = feuille.tables.getItem("ventes");

Une nouvelle ligne est définie dans un tableau de tableau et affectée à la variable nouveau. Elle est ensuite ajoutée à la fin du tableau (premier paramètre initialisé à null) :

let nouveau = [["Office 2019",13,1400]];
t.rows.add(null, nouveau);

La deuxième partie du code ajoute une colonne à la fin du tableau (premier paramètre initialisé à null) avec la fonction columns.add(). Les données sont passées dans un tableau de tableaux. Remarquez la façon dont on fait référence aux colonnes nommées Nombre et Prix :

t.columns.add(null, [

  ["Total"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"],

  ["=[Nombre]*[Prix]"]

]);
 
Commentaires

Aucun commentaire pour l'instant.

Laissez un commentaire