Médiaforma

API JS dans Excel – Création d’un tableau

Partagez cet article sur vos réseaux

Pour gérer et analyser les données contenues dans une plage de cellules, indépendamment des autres données de la feuille de calcul, le plus simple consiste à utiliser un tableau. Cette section va vous montrer comment créer un tableau, y ajouter des données, le filtrer, y sélectionner des données et le transformer en un objet JSON.

Dans un premier temps, nous allons créer ce tableau :

Création du tableau

Ce code est disponible en cliquant ici

Voici le code utilisé :

$("#creation").click(() => tryCatch(creation));

async function creation() {

  await Excel.run(async function(context) {

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

    // Création du tableau avec en-tête

    let t = feuille.tables.add("A1:C1", true);

    t.name = "ventes"; // Nom du tableau

    t.getHeaderRowRange().values = [["Formation", "Nombre", "Prix"]]; // En-têtes

    // Ajout de lignes à la fin du tableau ou index

    t.rows.add(null, [

      ["Office 2016", 2, 1200],

      ["Office 2019", 3, 1400],

      ["Office 2016", 1, 1200],

      ["Windows 10", 1, 950],

      ["Office 2019", 3, 1400],

      ["Windows 10", 9, 950],

      ["Office 2019", 2, 1400]

    ]);

  });

}

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

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

La méthode tables.add() est utilisée pour créer la ligne d’en-tête du tableau. La valeur true du deuxième paramètre indique qu’il s’agit d’une ligne d’en-tête :

let t = feuille.tables.add("A1:C1", true);

La propriété name donne un nom au tableau :

t.name = "ventes";

Enfin, les valeurs sont affectées aux cellules avec la méthode getHeaderRowRange() :

t.getHeaderRowRange().values = [["Formation", "Nombre", "Prix"]];

Les lignes de données sont ajoutées avec la méthode rows.add(). Le premier paramètre initialisé à null provoque l’ajout des données après la ligne de titre. Les données sont passées à la fonction sous la forme d’un tableau de tableaux :

t.rows.add(null, [

  ["Office 2016", 2, 1200],

  ["Office 2019", 3, 1400],

  ["Office 2016", 1, 1200],

  ["Windows 10", 1, 950],

  ["Office 2019", 3, 1400],

  ["Windows 10", 9, 950],

  ["Office 2019", 2, 1400]

]);
 
Commentaires

Aucun commentaire pour l'instant.

Laissez un commentaire