Einführung in Open XML - ExcelML im Überblick
Genau wie für Word gibt es auch für Excel und PowerPoint eine eigene Auszeichnungssprache. In dieser Folge der Open XML-Einführung nimmt der Autor ExcelML unter die Lupe.

» Von , 12.07.2009 17:02. Letztes Update, 12.07.2009 17:03.
von Jens Häupel
Ein Excel-Dokument besitzt im Unterschied zu einem Word-Dokument eine zusätzliche Dimension, da eine Arbeitsmappe mehrere Tabellenblätter enthalten kann. Diese Beziehung wird gemäß der Open XML-Struktur mit Hilfe einer eigenen Datei (Workbook.xml), welche die Inhalte einer Arbeitsmappe beschreibt, ausgedrückt. Diese Datei enthält neben Informationen über Views (z.B. die Adresse der letzten aktiven Zelle) und Themes auch eine Liste der enthaltenen Tabellenblätter:
<sheet name="Sheet1" sheetId="1" r:id="rId1"/>
Diese Zeile macht erneut die Verknüpfung über RelationshipIDs (xxx.xml.rels aus dem Ordner xl\_rels) deutlich, die den Weg in den Worksheets-Ordner weisen, in dem die SpreadsheetML-Dateien zu finden sind. Darin wird der Inhalt des Tabellenblattes definiert, der vereinfacht den folgenden Aufbau besitzt:
<worksheet>
<sheetData>
<row>
<c> </c>
</row>
</sheetData>
</worksheet>
Diese Struktur besitzt keine Überraschungen. Die Daten eines Tabellenblattes bestehen aus Row-Elementen (Zeilen). Der Zellinhalt wird in einem Cell-Elelement (<c>) definiert. Das kann von einfachen Zahlen über Zeichenketten bis hin zu Formeln alles sein, was eine Tabellenkalkulation fassen kann.
Die Zahl 42 in Zelle B3 wird in SpreadsheetML so ausgedrückt:
<c r="B3" s="2">
<v>42</v>
</c>
Dabei bedeuten r = Zellreferenz, s = Zahlenformat (Referenz zur styles.xml) und v = Wert. Eine direkte Formatierung gibt es in Excel nicht, s bezieht sich daher immer auf eine Formatbeschreibung in der Datei styles.xml. Ist kein besonders Zahlenformat erwünscht, können die Style-Informationen bei Zahlen auch weggelassen werden. Das würde dem Zahlenformat Standard in Excel entsprechen.



KOMMENTARE
KOMMENTAR SCHREIBEN