forked from sheetjs/sheetjs
54 lines
1.5 KiB
Markdown
54 lines
1.5 KiB
Markdown
|
## Working with the Workbook
|
||
|
|
||
|
The full object format is described later in this README.
|
||
|
|
||
|
This example extracts the value stored in cell A1 from the first worksheet:
|
||
|
|
||
|
```js
|
||
|
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);
|
||
|
```
|
||
|
|
||
|
**Complete examples:**
|
||
|
|
||
|
- <http://oss.sheetjs.com/js-xlsx/> HTML5 File API / Base64 Text / Web Workers
|
||
|
|
||
|
Note that older versions of IE do not support HTML5 File API, so the base64 mode
|
||
|
is used for testing. On OSX you can get the base64 encoding with:
|
||
|
|
||
|
```bash
|
||
|
$ <target_file base64 | pbcopy
|
||
|
```
|
||
|
|
||
|
On Windows XP and up you can get the base64 encoding using `certutil`:
|
||
|
|
||
|
```cmd
|
||
|
> certutil -encode target_file target_file.b64
|
||
|
```
|
||
|
|
||
|
(note: You have to open the file and remove the header and footer lines)
|
||
|
|
||
|
- <http://oss.sheetjs.com/js-xlsx/ajax.html> XMLHttpRequest
|
||
|
|
||
|
- <https://github.com/SheetJS/js-xlsx/blob/master/bin/xlsx.njs> node
|
||
|
|
||
|
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_json` generates an array of objects
|
||
|
- `XLSX.utils.sheet_to_formulae` generates a list of formulae
|
||
|
|