Benutzerdefinierte Inhaltsverzeichnisse in GESStabs
Die Übersicht in umfangreichen Tabellenbänden zu behalten ist nicht immer leicht. Besonders Studien, die eine Vielzahl verschiedener Themengebiete abdecken, erzeugen eine lange Liste an Auswertungen. Der Standard des Inhaltsverzeichnisses sieht einen Eintrag pro Tabelle vor, jedoch bietet GESStabs tiefere Eingriffsmöglichkeiten an, um die Verzeichnisstruktur ganz den eigenen Bedürfnissen anzupassen, um jederzeit den Überblick über die Studienergebnisse zu wahren.
Im Folgenden erhalten Sie eine kurze Anleitung, um mit OFFICEEXPORT ein Tabellenband in Excel mit Inhaltsverzeichnis inklusive Hyperlinks für selbst gewählte Abschnitte/Excel-Arbeitsblatt (also nicht für jede einzelne Tabelle!) anzulegen. Das Inhaltsverzeichnis kann nach Belieben für ganze Fragebogenabschnitte (Screener, Hauptbefragung, Statistik) oder feingliedriger bis hin z. B. für jede einzelne Frage angelegt werden.Tab
Da jeder Eintrag in das Inhaltsverzeichnis auch einen eigenen Eintrag im Script benötigt, obliegt es dem Anwender, hier eine Aufwand-Nutzen-Rechnung über die Anzahl der gewünschten Einträge durchzuführen.
Voraussetzung für ein Inhaltsverzeichnis in Excel ist ein mit OFFICEEXPORT erstellter Excel-Tabellenband, auf den entsprechend referenziert werden kann.
Folgende zentralen GESStabs-Befehle sind hier involviert:
- CHAPTERTITLE (legt ein neues Excel-Arbeitsblatt an)
- CONTENTKEY NEXT TABLE (Variante des CONTENTKEY; gilt nur für die erste folgende Tabelle)
- OFFICECONTENTPAGE (legt im ersten Excel-Arbeitsblatt ein Inhaltsverzeichnis an)
Das Layout des Inhaltsverzeichnisses kann wie folgt angelegt werden:
transfersuppressedcontentkey = yes; officecontentpage = | name : "Inhalt" | title : position a1 text "Inhaltsverzeichnis" | content : position a3 font "Calibri" size 11 option underline foreground $909090 | backtocontent : "Zurück zum Inhaltsverzeichnis" font "Calibri" size 11 option underline foreground $909090 | noautotabletitle : yes;
Erstellen eines Eintrags im Inhaltsverzeichnis
CHAPTERTITLE = "S4"; (erstellt in Excel ein Arbeitsblatt mit den Namen S4 und im Inhalts- verzeichnis einen Hyperlink mit dem gleichen Namen) CONTENTKEY NEXT TABLE = "Qu. S4: Alter"; (gibt dem Hyperlink im Inhaltsverzeichnis eine neue, ausführlichere Vertextung) table = #kopf by altersgruppen mean(alter);
Wie dem obigen Code zu entnehmen, werden die Einträge vor dem dazugehörigen TABLE-Statement definiert. Zum wiederholten Setzen von Einträgen in das Inhaltsverzeichnis bietet sich natürlich ein MACRO an, dem nur noch die Texte zu übergeben sind.
Achtung: Die mit CHAPTERTITLE erstellten Arbeitsblattnamen als auch Hyperlinks unterliegen in MS Excel strengen Restriktionen bezüglich Länge und Verwendung von Sonderzeichen. Deshalb so kurz und knackig wie möglich halten! Zwar sind Umlaute und Leerzeichen durchaus in den Arbeitsblattnamen erlaubt, doch empfiehlt es sich immer, eine Konvention zu wählen, die ein möglichst geringes Risiko für Fehler beinhaltet. Bei den mit CONTENTKEY NEXT TABLE erstellten Texten hat man jedoch mehr Freiheiten – nur auf mehrzeilige Ausgaben sollte man hier verzichten, da sie syntaktisch nicht unterstützt werden, aber dafür können sämtliche druckbaren Zeichen berücksichtigt werden.
Und als Bonus zur dann bereits gemachten Arbeit, setzt man einmal global den Befehl, …
CONTENTKEYTOPDF = YES
…, hat man dieses Inhaltverzeichnis auch als Lesezeichen (inkl. der Hyperlink-Funktionalität) im PDF!
ein Gastbeitrag von Roland Hinck, mindline