| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ## Working with the Workbook
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The full object format is described later in this README. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | <details> | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  |   <summary><b>Reading a specific cell </b> (click to show)</summary> | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 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); | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | </details> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <details> | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  |   <summary><b>Adding a new worksheet to a workbook</b> (click to show)</summary> | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | This example uses [`XLSX.utils.aoa_to_sheet`](#array-of-arrays-input) to make a | 
					
						
							|  |  |  | worksheet and appends the new worksheet to the workbook: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  | var new_ws_name = "SheetJS"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /* make worksheet */ | 
					
						
							|  |  |  | var ws_data = [ | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  |   [ "S", "h", "e", "e", "t", "J", "S" ], | 
					
						
							|  |  |  |   [  1 ,  2 ,  3 ,  4 ,  5 ] | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | ]; | 
					
						
							|  |  |  | 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; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | </details> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-07-05 22:27:54 +00:00
										 |  |  | ### Parsing and Writing Examples
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - <http://sheetjs.com/demos/modify.html> read + modify + write files | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | - <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 | 
					
						
							| 
									
										
										
										
											2017-05-16 17:45:35 +00:00
										 |  |  | - `XLSX.utils.sheet_to_html` generates HTML | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | - `XLSX.utils.sheet_to_json` generates an array of objects | 
					
						
							|  |  |  | - `XLSX.utils.sheet_to_formulae` generates a list of formulae | 
					
						
							|  |  |  | 
 |