Maison  >  Article  >  interface Web  >  Comment exporter des nodejs vers Excel

Comment exporter des nodejs vers Excel

王林
王林original
2023-05-12 10:25:063301parcourir

Excel est un logiciel de bureau commun utilisé par de nombreuses entreprises et organisations pour l'analyse et le traitement des données. Dans le développement Web, il est souvent nécessaire d'exporter certaines données vers des tableaux Excel pour que les utilisateurs puissent les télécharger et les visualiser. Dans cet article, nous allons vous montrer comment exporter des données vers un document Excel à l'aide de Node.js.

1. Installez les modules nécessaires

Dans Node.js, nous pouvons utiliser des modules tiers pour exporter des données dans des documents Excel. Parmi eux, les deux modules les plus couramment utilisés sont xlsx et exceljs. Avant d'utiliser ces modules, nous devons d'abord les installer :

$ npm install xlsx exceljs

2. Exportez Excel à l'aide du module xlsx

xlsx est un module JavaScript puissant et facile à utiliser pour exporter des données vers des documents Excel. Il prend en charge plusieurs formats dont XLSX, XLS, ODS, CSV, etc.

Voici un exemple simple qui montre comment exporter un tableau contenant le nom, l'âge et le sexe vers un tableau Excel :

const fs = require('fs');
const XLSX = require('xlsx');

const data = [
  ['Name', 'Age', 'Gender'],
  ['Amy', 25, 'Female'],
  ['Bob', 30, 'Male'],
  ['Cathy', 27, 'Female']
];

const workbook = XLSX.utils.book_new();
const worksheet = XLSX.utils.aoa_to_sheet(data);
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
const filename = 'data.xlsx';
XLSX.writeFile(workbook, filename);
console.log(`File ${filename} is written successfully`);

Dans le code ci-dessus, nous créons d'abord un tableau bidimensionnel contenant les données. Nous convertissons ensuite ce tableau en un objet feuille à l'aide de la méthode XLSX.utils.aoa_to_sheet(). Ensuite, nous créons un objet classeur et ajoutons la feuille au classeur à l'aide de la méthode XLSX.utils.book_append_sheet(). Enfin, nous écrivons le classeur dans un fichier à l’aide de la méthode XLSX.writeFile().

Après avoir exécuté le code ci-dessus, nous obtiendrons un fichier Excel nommé data.xlsx, qui contient les données que nous avons exportées.

3. Exporter Excel à l'aide du module Exceljs

exceljs est un autre module Node.js populaire utilisé pour exporter des données dans des documents Excel. Il possède plus de fonctionnalités que xlsx, telles que la prise en charge de plusieurs feuilles de calcul, le formatage des cellules, les graphiques, etc.

Ce qui suit est un exemple d'utilisation d'Exceljs pour exporter un tableau Excel :

const fs = require('fs');
const ExcelJS = require('exceljs');

const data = [
  ['Name', 'Age', 'Gender'],
  ['Amy', 25, 'Female'],
  ['Bob', 30, 'Male'],
  ['Cathy', 27, 'Female']
];

const workbook = new ExcelJS.Workbook();
const worksheet = workbook.addWorksheet('Sheet1');
data.forEach(row => worksheet.addRow(row));
const filename = 'data.xlsx';
workbook.xlsx.writeFile(filename)
  .then(() => console.log(`File ${filename} is written successfully`));

Dans le code ci-dessus, nous créons d'abord un tableau bidimensionnel contenant des données. Ensuite, nous créons un objet ExcelJS.Workbook et ajoutons une feuille de calcul à l'aide de la méthode addWorksheet(). Ensuite, nous parcourons le tableau et ajoutons chaque ligne de données à la feuille de calcul à l'aide de la méthode addRow(). Enfin, nous écrivons le classeur dans un fichier à l’aide de la méthode writeFile().

Différent de xlsx, Exceljs doit utiliser Promise pour gérer les opérations d'écriture de fichiers. Après avoir exécuté le code ci-dessus, nous obtiendrons un fichier Excel nommé data.xlsx, qui contient les données que nous avons exportées.

4. Résumé

Dans cet article, nous avons présenté comment utiliser Node.js pour exporter des données dans un document Excel. En utilisant des modules tiers comme xlsx ou exceljs, nous pouvons facilement accomplir cette tâche. Que vous ayez besoin d'exporter des données au format XLSX ou XLS, ou de prendre en charge des fonctionnalités avancées telles que plusieurs feuilles de calcul ou le formatage de cellules, ces modules peuvent répondre à vos besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn