Sélectionner une page


version npm
Licence
statut
téléchargements npm
État de la construction
Statut de dépendance
état de devDependencies
Badge Codacy
Badge Codacy

Analyseur / générateur de fichiers Excel sur lequel vous pouvez compter js-xlsx.

utiliser

installation

npm install node-xlsx --save

Exemples

  1. Lors de l’analyse d’un xlsx à partir d’un fichier / tampon, un tableau de feuilles de calcul est généré
import xlsx from 'node-xlsx';
// Or var xlsx = require('node-xlsx').default;

// Parse a buffer
const workSheetsFromBuffer = xlsx.parse(fs.readFileSync(`${__dirname}/myFile.xlsx`));
// Parse a file
const workSheetsFromFile = xlsx.parse(`${__dirname}/myFile.xlsx`);
  1. Créer un xlsx
import xlsx from 'node-xlsx';
// Or var xlsx = require('node-xlsx').default;

const data = [[1, 2, 3], [true, false, null, 'sheetjs'], ['foo', 'bar', new Date('2014-02-19T14:30Z'), '0.3'], ['baz', null, 'qux']];
var buffer = xlsx.build([{name: "mySheetName", data: data}]); // Returns a buffer
import xlsx from 'node-xlsx';
// Or var xlsx = require('node-xlsx').default;

const data = [[1, 2, 3], [true, false, null, 'sheetjs'], ['foo', 'bar', new Date('2014-02-19T14:30Z'), '0.3'], ['baz', null, 'qux']]
const options = {'!cols': [{ wch: 6 }, { wch: 7 }, { wch: 10 }, { wch: 20 } ]};

var buffer = xlsx.build([{name: "mySheetName", data: data}], options); // Returns a buffer
  • S’étendant sur plusieurs lignes A1:A4 dans chaque feuille
import xlsx from 'node-xlsx';
// Or var xlsx = require('node-xlsx').default;

const data = [[1, 2, 3], [true, false, null, 'sheetjs'], ['foo', 'bar', new Date('2014-02-19T14:30Z'), '0.3'], ['baz', null, 'qux']];
const range = {s: {c: 0, r:0 }, e: {c:0, r:3}}; // A1:A4
const options = {'!merges': [ range ]};

var buffer = xlsx.build([{name: "mySheetName", data: data}], options); // Returns a buffer
  • S’étendant sur plusieurs lignes A1:A4 seulement sur la deuxième feuille
import xlsx from 'node-xlsx';
// Or var xlsx = require('node-xlsx').default;

const dataSheet1 = [[1, 2, 3], [true, false, null, 'sheetjs'], ['foo', 'bar', new Date('2014-02-19T14:30Z'), '0.3'], ['baz', null, 'qux']];
const dataSheet2 = [[4, 5, 6], [7, 8, 9, 10], [11, 12, 13, 14], ['baz', null, 'qux']];
const range = {s: {c: 0, r:0 }, e: {c:0, r:3}}; // A1:A4
const sheetOptions = {'!merges': [ range ]};

var buffer = xlsx.build([{name: "myFirstSheet", data: dataSheet1}, {name: "mySecondSheet", data: dataSheet2, options: sheetOptions}]); // Returns a buffer

Notez que si vous essayez de fusionner la même cellule plusieurs fois, votre fichier xlsx sera considéré comme endommagé.

  • Utilisation de la notation d’objet primitive Les valeurs de données peuvent également être spécifiées dans une représentation non abstraite.

Exemples:

const rowAverage = [[{t:'n', z:10, f:'=AVERAGE(2:2)'}], [1,2,3];
var buffer = xlsx.build([{name: "Average Formula", data: rowAverage}]);

Faire référence à xlsx Documentation pour la structure et les valeurs valides:

Dépannage

Cette bibliothèque nécessite au moins nodeJS v4. Pour les versions antérieures, vous pouvez utiliser cette solution de contournement avant d’utiliser la bibliothèque.

npm i --save object-assign
Object.prototype.assign = require('object-assign');

Contribuer

Veuillez envoyer toutes les demandes d’extraction vers la branche principale. Si votre test unitaire inclut des correctifs ou des fonctionnalités Javascript, vous devez inclure des tests unitaires pertinents. Merci beaucoup!

Scripts disponibles

scénario la description
commencer Alias ​​du test: observer
examen Faire des tests unitaires de moka
Test: horloge Faire et regarder des tests unitaires de moka
peluche Exécuter des tests Eslint statiques
compiler Compilez la bibliothèque
compiler: regarder Compilez et regardez la bibliothèque

Auteurs

Olivier Louvignes

Copyright et licence

Licence Apache 2.0

Copyright (C) 2012-2014  Olivier Louvignes

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

Except where noted, this license applies to any and all software programs and associated documentation files created by the Original Author and distributed with the Software:

Inspired by SheetJS gist examples, Copyright (c) SheetJS.



Source link

Recent Posts