ой Andre Minhorst Melanie Breden RibbonProgram mierung für Office 2007 Access, Excel, Word, Outlook, PowerPoint ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam
Inhalt Vorwort 13 1 Ribbons 19 1.1 Ribbons 21 1.2 Aus Alt mach Neu oder: Wo sind meine CommandBarsl 22 1.3 Neue Dateiformate in 2007 23 1.4 Hin-und herkonvertieren 25 1.4.1 Ein Container für jede Datei 26 1.4.2 Ribbons anpassen 27 1.5 Einführendes Beispiel für eine Änderung des Excel-Ribbons 29 2 Ribbons anpassen 41 2.1 Das Ribbon in den Office-Anwendungen 44 2.1.1 Office Open XML-Dokumente 44 2.1.2 Access-Datenbanken 45 2.1.3 Outlook 46 2.2 Die XML-Struktur 46 2.3 Das CHsfomin-Element 47 2.4 Das ribbon-element 48 2.5 Das tabs-element 51 2.6 Das contextualtabs-element 51 2.7 Das tabsef-element 52 2.8 Das tab-element! 53 2.8.1 Eindeutige Kennzeichnung von Elementen 53 2.8.2 Integrierte tab-elemente ausblenden 55 2.8.3 Integrierte tab-elemente einblenden 55 2.8.4 Benutzerdefinierte tab-elemente hinzufügen 56 2.8.5 Die Reihenfolge eigener tab-elemente festlegen 56 2.8.6 Ein kontextbezogenes tab-element ausblenden 57 2.8.7 PowerPoint liefert zwei Tabs für einen 59 2.9 Das gromp-element 59 2.9.1 Integrierte growp-elemente ausblenden 60 2.9.2 Integrierte growp-elemente einblenden 61 2.9.3 Gruppen eines kontextbezogenen tab-elements ausblenden 62 2.9.4 Benutzerdefiniertes growp-element erstellen 63 2.9.5 Ein integriertes growp-element nachbauen, um dieses anzupassen 63
2.10 Das aaf-element oder: Die Schnellzugriffsleiste 64 2.10.1 Anpassungen per XML 65 2.10.2 Manuelle Anpassung der Schnellzugriffsleiste 68 2.10.3 Schnellzugriffsleiste positionieren 69 2.10.4 Symbolleistendateien sichern und exportieren 69 2.10.5 Benutzerdefinierte Befehle manuell zur Schnellzugriffsleiste hinzufügen 71 2.10.6 Schnellzugriffsleiste in einzelnen Dateien anpassen 73 2.11 Das officemenu-mement 74 2.11.1 Einträge des Office-Menüs ausblenden 75 2.11.2 Einen Eintrag zum Office-Menü hinzufügen 77 2.12 Das commands-element 78 2.13 Das command-element 78 VBA und Callbacks 83 3.1 Definition Callback-Funktion.84 3.2 Grf...-Callbacks.85 3.2.1 Makrosicherheit einstellen 86 3.2.2 Weitere Fehlerquellen 87 3.2.3 Callback-Funktion anlegen 88 3.2.4 Aufbau der Callback-Funktionen 90 3.2.5 Get...-Callbacks zur Laufzeit aufrufen 90 3.3 Ereignis-Callbacks 95 3.4 Ribbon-Objekte 96 3.4.1 IRibbonUI 96 3.4.2 IRibbonControl 97 3.4.3 IRibbonExtensibility (nur COM-Add-Ins) 98 3.4.4 Application.LoadCustomUI (nur Access) 98 3.5 Callbacks der Basis-Elemente des Ribbons 98 3.5.1 custom Ш-Element 98 3.5.2 tab-element 99 3.5.3 group-element 100 3.5.4 tabsef-element 100 3.5.5 command-element 100 3.6 Syntax der Callback-Funktionen 103 3.7 Orte für Callbacks 104 3.7.1 Callbacks in Word 104 3.7.2 Callbacks in Excel 104 3.7.3 Callbacks in PowerPoint 105 3.7.4 Callbacks in Outlook 105 3.7.5 Callbacks in Access 105 3.8 CommandBars-Funktionen 105 3.8.1 Menübefehle ausführen 106 3.8.2 Ribbon-Bilder einlesen 107 3.8.3 Beschriftungen auslesen 107 3.8.4 Aktiviert/Deaktiviert-Zustand ermitteln 107
Inhalt 3.8.5 Sichtbar-Zustand ermitteln 108 3.8.6 screentip und supertip auslesen 108 3.8.7 Statusleiste ein- und ausblenden 108 3.8.8 Zusatzinformationen speichern 108 3.8.9 Ribbonleiste minimieren und maximieren 108 4 Ribbon-Steuerelemente 111 4.1 Beschreibung der Steuerelemente 113 4.1.1 box-element 113 4.1.2 button-element 115 4.1.3 buttongroup-element 118 4.1.4 czieczcbox-element 119 4.1.5 comfrobox-element 124 4.1.6 controz-element 130 4.1.7 dialogboxlauncher-element 131 4.1.8 dropdown-element 133 4.1.9 dynamicmenu-element 138 4.1.10 edz'rßox-element 140 4.1.11 gazzery-element 142 4.1.12 item-element 146 4.1.13 ZabeZConfroZ-Element 147 4.1.14 теии-element 148 4.1.15 menuseparator-element 151 4.1.16 separator-element 151 4.1.17 spzftßmttorr-element 152 4.1.18 ZoggZeBMffoH-Element 154 4.2 Attribute 157 4.2.1 boxszyze-attribut 157 4.2.2 coziotms-attribut 157 4.2.3 descnph'on-attribut 158 4.2.4 enabzed-attribut 158 4.2.5 Zd-Attribut 158 4.2.6 idmso-attribut 158 4.2.7 ZdQ-Attribut 158 4.2.8 Zmage-Attribut 159 4.2.9 ZmageMso-Attribut 159 4.2.10 mserza/termso-attribut 159 4.2.11 inserza/terq-attribut 160 4.2.12 ZnserZBe/oreMso-Attribut 160 4.2.13 Znserfße/oreQ-Attribut 160 4.2.14 invalidatecontentondrop-attribut 160 4.2.15 ZtemHeZgZiZ-Attribut 160 4.2.16 ZfemSZze-Attribut 160 4.2.17 itemwidth-attiibut 160 4.2.18 fceytzp-attribut 161 4.2.19 ZabeZ-Attribut 161 9
4.2.20 maxlength-attribut 161 4.2.21 rows-attribut 161 4.2.22 screentip-attrihut 161 4.2.23 showimage-attribut 161 4.2.24 showttemlmage-attribut 162 4.2.25 showitemlabel-attribut 162 4.2.26 showlabel-attribut 162 4.2.27 sz'ze-attribut 162 4.2.28 sfzesfrmg-attribut 162 4.2.29 startfromscratch-attribut 163 4.2.30 SMpertfp-Attribut 163 4.2.31 fag-attribut 163 4.2.32 Ше-Attribut 163 4.2.33 znsz'b/e-attribut 163 4.2.34 Informationen zu Text-Attributen 163 Bilder im Ribbon 165 5.1 Bilder in Office Open XML-Dateien 165 5.1.1 Verwendung integrierter Symbole 166 5.1.2 Hinzufügen benutzerdefinierter Symbole 169 5.2 Bilder direkt aus Office Open XML-Dokumenten anzeigen 179 5.3 Bilder im Ribbon unter Access 185 5.4 Office-Verweis und Debugging 186 5.5 Bilder nur per Callback verfügbar 187 5.6 loadlmage oder getlmagel 188 5.6.1 loadlmage 188 5.6.2 getlmage 190 5.7 Bilder in Tabellen der Datenbank speichern 190 5.7.1 OLE-Felder als Bildquelle 191 5.7.2 Anlage-Felder als Bildquelle 193 Ribbons in Access 2007 197 6.1 Ribbon-Definitionen verwalten 198 6.1.1 Ein Ribbon anlegen 200 6.1.2 Ribbon aus Textdatei laden 203 6.1.3 Ribbon aus Zeichenkette einlesen 204 6.2 Ribbons mit Access entwickeln 205 6.3 Benutzerdefinierte Ribbons in Access-Anwendungen 208 6.3.1 Ribbons für Formulare und Berichte 209 6.3.2 Ribbons für Formulare 209 6.3.3 Ribbons für Berichte 212 6.4 Callbacks in Access 212 6.4.1 Office-Verweis 213 6.4.2 Ribbon ein- und ausblenden per VBA 215
Inhalt 6.5 Beispiele für den Einsatz des Ribbons in Access 216 6.5.1 Beispiel Adressverwaltung 217 6.5.2 Beispiel Access-Add-In mit Ribbon 217 6.6 Ribbon-Objekt fehlerresistent speichern 220 7 Ribbon-Anpassung per VB6-COM-Add-ln 223 7.1 Projekt anlegen 224 7.2 IRibbonExtensibility implementieren 226 7.3 Ribbon-XML zurückgeben 227 7.4 Bilder in VB6-COM-Add-Ins 230 7.5 Application-Verweis anlegen 231 7.6 COM-Add-Ins für andere Anwendungen als Word 233 7.7 COM-Add-Ins weitergeben 236 7.8 Verwendung mehrerer Ribbon-Erweiterungen 236 8 Ribbons in Outlook 2007 239 8.1 Projekt anlegen 240 8.2 Ribbon hinzufügen 241 8.3 Unterbringen der Callback-Funktionen 244 8.4 COM-Add-In mit Funktion versehen 245 8.5 Beispiel: Prioritätschecker 246 8.6 Weitergabe 249 9 Custom Task Panes 253 9.1 Grundgerüst bauen 256 9.1.1 Ein- und ausblenden von Custom Task Panes 259 9.1.2 Umgang mit dem Designer 259 9.2 Custom Task Panes mit VB6 264 9.2.1 Custom Task Pane im Hauptfenster einer Anwendung 264 9.2.2 Custom Task Panes in Outlook-Inspektor-Fenstern 269 10 Kontextmenüs in Office 2007 277 10.1 Kontextmenüs und VBA 278 10.2 Symbole in Kontextmenüs 283 10.3 Speicherorte für Bilder 286 10.3.1 Office Open XML-Dokumente 286 10.3.2 Access-Datenbanken 286 10.3.3 Outlook 286 Anhang 287 Index 297