Skip to content

Instantly share code, notes, and snippets.

@natergj
natergj / excel4node http native sample
Created November 24, 2015 00:45
Very basic sample using node's native http module
var xl = require('excel4node');
var http = require('http');
http.createServer(function(req, res){
switch(req.url){
case '/download':
var wb = new xl.WorkBook();
var ws = wb.WorkSheet('Sheet 1');
ws.Cell(1,1).String('String');
wb.write('Excel.xlsx', res);
@natergj
natergj / DataValidationIssue161
Created January 15, 2018 15:41
Attempt to recreate the behavior described in https://github.com/natergj/excel4node/issues/161
const xl = require('excel4node');
const wb = new xl.Workbook();
const ws = wb.addWorksheet('sheet1');
const ws2 = wb.addWorksheet('sheet2');
ws2.cell(1,1).string('value 1');
ws2.cell(2,1).string('value 2');
ws2.cell(3,1).string('value 3');
@natergj
natergj / Indian currency
Created February 21, 2018 00:50
display currency in Indian format in excel4node
var xl = require('excel4node');
var wb = new xl.Workbook();
var ws = wb.addWorksheet('test');
var indianCurrency = wb.createStyle({
numberFormat: '[>=10000000]"RS "##\\,##\\,##\\,##0;[>=100000]"RS "\\ ##\\,##\\,##0;"RS "##,##0',
});
ws.column(1).setWidth(15);
ws.cell(1,1).number(12.34).style(indianCurrency); // displays as "RS 12"
@natergj
natergj / Hidden First Tab
Created September 30, 2018 22:57
hide first tab for workbooks created with excel4node
const xl = require('excel4node');
const wb = new xl.Workbook({
workbookView: {
activeTab: 1,
},
});
const hiddenWorksheet = wb.addWorksheet('Hidden', {
hidden: true,
@natergj
natergj / freeze.js
Created October 19, 2018 12:30
Freeze 1st row on 2nd sheet only
const xl = require('excel4node')
const wb = new xl.Workbook()
const ws1 = wb.addWorksheet('sheet 1')
ws1.cell(1, 1).string('Sheet 1 - A1')
ws1.cell(5, 1).string('Sheet 1 - A5')
ws2 = wb.addWorksheet('sheet 2')
ws2.cell(1, 1).string('Sheet 2 - A1')
const xl = require('excel4node');
const costsObj = {
'supplies': {
'paper': 100,
'toner': 50,
},
'equipment': {
'laptops': 3500,
'accessories': 150
@natergj
natergj / bg_color_font.js
Created July 25, 2019 13:57
excel4node background color and font
const xl = require("excel4node");
const wb = new xl.Workbook();
const ws = wb.addWorksheet("Background Color");
const greenBgColumnsRows = wb.createStyle({
font: { color: "black", size: 12 },
fill: {
type: "pattern",
patternType: "solid",
bgColor: "#33FF35",
async function excelDataFiller(rowNumber) {
const startIndex = 2;
const j = rowNumber + 1;
const numDiff = getCountDiff(storage.allCountResults[rowNumber].csdbCount, storage.allCountResults[rowNumber].esCount);
const perDiff = (storage.allCountResults[rowNumber].csdbCount - storage.allCountResults[rowNumber].esCount) / storage.allCountResults[rowNumber].csdbCount;
/* Column parameters */
ws.column(1).setWidth(30);
ws.column(2).setWidth(27);
@natergj
natergj / excel4node express.js example
Created November 8, 2015 22:15
Very basic express.js app to create a route that generates and downloads a basic Excel workbook
var express = require('express');
var xl = require('excel4node');
var app = express();
app.get('/', function(req, res){
res.end('Hello World');
});
app.get('/myreport', function(req, res) {
@natergj
natergj / percenatage formatting
Created February 13, 2018 00:12
display cells as percentage in excel4node
var xl = require('excel4node');
var wb = new xl.Workbook();
var ws = wb.addWorksheet('test');
// Create a reusable style
var style = wb.createStyle({
numberFormat: '#.00%; -#.00%; -'
});