sheetjs-clone/docbits/25_manip.md
SheetJS 00f25cfe1e version bump 0.10.7: autocorrections for bad files
- recalculate SSF for malformed files (fixes #506 h/t @asksahil)
- malformed shared string (fixes #445 h/t @Ramzec)
- SSF added to TS def (fixes #711 h/t @duckywang1)
- Norsk property names
- resolved gitbook processing issues
2017-07-05 18:27:54 -04:00

1.7 KiB

Working with the Workbook

The full object format is described later in this README.

Reading a specific cell (click to show)

This example extracts the value stored in cell A1 from the first worksheet:

var first_sheet_name = workbook.SheetNames[0];
var address_of_cell = 'A1';

/* Get worksheet */
var worksheet = workbook.Sheets[first_sheet_name];

/* Find desired cell */
var desired_cell = worksheet[address_of_cell];

/* Get the value */
var desired_value = (desired_cell ? desired_cell.v : undefined);
Adding a new worksheet to a workbook (click to show)

This example uses XLSX.utils.aoa_to_sheet to make a worksheet and appends the new worksheet to the workbook:

var new_ws_name = "SheetJS";

/* make worksheet */
var ws_data = [
	[ "S", "h", "e", "e", "t", "J", "S" ],
	[  1 ,  2 ,  3 ,  4 ,  5 ]
];
var ws = XLSX.utils.aoa_to_sheet(ws_data);

/* Add the sheet name to the list */
wb.SheetNames.push(ws_name);

/* Load the worksheet object */
wb.Sheets[ws_name] = ws;

Parsing and Writing Examples

The node version installs a command line tool xlsx which can read spreadsheet files and output the contents in various formats. The source is available at xlsx.njs in the bin directory.

Some helper functions in XLSX.utils generate different views of the sheets:

  • XLSX.utils.sheet_to_csv generates CSV
  • XLSX.utils.sheet_to_html generates HTML
  • XLSX.utils.sheet_to_json generates an array of objects
  • XLSX.utils.sheet_to_formulae generates a list of formulae