The Microsoft Excel File Format - OpenOffice.org
The Microsoft Excel File Format - OpenOffice.org
The Microsoft Excel File Format - OpenOffice.org
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
4.10 Internal and External References<br />
4.10.3 References in BIFF8<br />
<strong>The</strong> main data of all types of references is stored in the Link Table inside the Workbook Globals Substream (➜4.2.5). All<br />
formulas use only indexes for specific references. <strong>The</strong> Link Table itself is optional and occurs only, if there are any<br />
references in the document.<br />
Common structure of the Link Table, BIFF8:<br />
●● EXTERNALBOOK Blocks Settings for a referenced document<br />
● EXTERNSHEET ➜5.41<br />
○○ DEFINEDNAME ➜5.33<br />
Each referenced document is represented by an EXTERNALBOOK Block. It starts with an EXTERNALBOOK record. It<br />
contains the name of the document and the names of its sheets. It is followed by additional records that allow to dereference<br />
the data in the document. After the last EXTERNALBOOK Block occurs only one EXTERNSHEET record. It<br />
contains a list with indexes to the SUPBOOKs for each used reference anywhere in the document. Formulas use indexes<br />
into this EXTERNSHEET list.<br />
Example: A document contains (among other references) the two formulas<br />
=[example.xls]ExtSheet2!A1 and<br />
=[example.xls]ExtSheet1!A1.<br />
EXTERNALBOOK<br />
Block 0<br />
EXTERNALBOOK<br />
Block 1<br />
EXTERNALBOOK<br />
Block 2<br />
EXTERNSHEET<br />
Any content<br />
Document = “example.xls”<br />
Sheet 0 = “ExtSheet1”<br />
Sheet 1 = “ExtSheet2”<br />
Sheet 2 = “ExtSheet3”<br />
Any content<br />
REF 0 = any reference<br />
REF 1 = {EXTERNALBOOK = 1, sheet range = 1…1}<br />
REF 2 = any reference<br />
REF 3 = {EXTERNALBOOK = 1, sheet range = 0…0}<br />
REF 4 = any reference<br />
<strong>The</strong> first formula uses REF 1 in the EXTERNSHEET record. REF 1 refers to EXTERNALBOOK Block 1 and<br />
sheet range 1…1. This means, the document “example.xls” is used (document of EXTERNALBOOK Block 1)<br />
and the name of the sheet is “ExtSheet2” (sheet 1 of EXTERNALBOOK Block 1). In the same way, the second<br />
formula uses REF 3 in the EXTERNSHEET record. All list entries inside of the EXTERNSHEET record are<br />
unique. For instance all formulas in the workbook referring to sheet “ExtSheet2” of the document “example.xls”<br />
use REF 1. All other EXTERNALBOOK Blocks and REFs are placeholders for other references in this example.<br />
Common structure of an EXTERNALBOOK Block, BIFF8:<br />
● EXTERNALBOOK ➜5.38<br />
○○ EXTERNALNAME ➜5.39<br />
○○<br />
● XCT ➜5.114<br />
●● CRN ➜5.23<br />
<strong>The</strong> EXTERNALBOOK Block may contain cached values of cells in the referenced document. <strong>The</strong>se values are stored in<br />
several XCT and CRN records.<br />
105