data1.io, unser neuer Service für Forecasting und dezentrale Datensammlung, nutzt ein innovatives Office (Web) Add-In, um den Cloudservice der Anwendung interaktiv mit den Excel Erfassungstemplates zu verknüpfen und auf diese Weise den Lese- und Schreibprozess aus den Spreadsheets in die Cloud zu automatisieren.
Office Add-Ins - fallweise auch Web Add-Ins und früher Office Apps genannt - stellen eine seit Office 2013 verfügbare Technologie dar, die völlig neue Anwendungen auf Basis von Webservices/APIs in Excel ermöglichen. Im folgenden Beitrag werden diese Office (Web) Add-Ins anhand deren Ausprägung in MS Excel vorgestellt und die wichtigsten Fragen rund um deren Verwendung beleuchtet.
1. Was ist ein Office (Web) Add-in und was ist der Unterschied zu einem klassischen Excel Add-In?
Office (Web) Add-Ins in Excel werden durch folgende Eigenschaften charakterisiert:
- Einfache Installation per Mausklick aus dem Office Store ... keine exe- oder xlam-Installationsdatei, die aufwendig verteilt und später aufwendig aktualisiert werden müssen.
- Programmiert in HTML und JavaScript ... und nicht in VBA o.ä. wie klassische Excel Add-Ins. Technisch gesehen besteht ein Office (Web) Add-In aus einer XML-Manifest-Datei und einer Web Applikation. Im einfachsten Fall besteht die Web Applikation nur aus statischem HTML Code ("Hello World"). Die Interaktion der Web Applikation mit Excel erfolgt über die sogenannte JavaScript API ("Office.js", aktuell in Version 1.5, Stand April 2017).
- Gehostet auf einem Webserver ... die Anwendung wird also nicht in Excel sondern auf einem externen Webserver ausgeführt (gehostete Lösung).
- Primärer Zweck ist die Interaktion eines Excel Sheets mit externen Webservices ... der webbasierte Zugriff ist also die Regel und nicht die Ausnahme.
- Das Benutzerinterface beinhaltet entweder eine Taskpane (rechts angedockt) oder einem Content Object (frei am Zellraster eines Sheets anordenbar). Beide sind technisch gesehen in Excel integrierte Browser-Fenster, die die Web Applikation von dem externen Webserver aufrufen. In klassischen Add-Ins gibt es zwar auch Taskpanes (und Forms), diese können aber keine Web Applikationen mit Excel Sheets interagieren lassen.
Das Benutzerinterface wird mit Add-in Commands (= Buttons in den Ribbons) angereichert, wie dies auch aus den klassischen Add-Ins bekannt ist. Diese Add-In Commands sind derzeit nur auf folgenden Plattformen verfügbar: Office for Windows Desktop 2016 (build 16.0.6769+), Office for Mac (build 15.33+) und Office Online . - Verfügbar in Excel for Windows Desktop (ab Excel 2013 SP1), Excel Online, Excel for the Mac und Excel for the iPad ... klassische Excel Add-Ins stehen hingegen in allen Excel Versionen zur Verfügung, nicht aber in Excel Online und auch nicht am iPad. Auf Smartphones stehen derzeit auch die Office (Web) Add-Ins noch nicht zur Verfügung (ist aber geplant).
Office (Web) Add-Ins eignen sich daher besonders gut für
- Anwendungen mit großen Benutzerzahlen (wegen der einfachen Distribution und Updates über den Store)
- Anwendungen mit browser-basierter Oberfläche (wegen der Lauffähigkeit auch in Excel Online/SharePoint)
- Excel Arbeitsmappen, die um webbasierte Funktionen und Inhalte angereichert werden sollen
- Cloud-basierte Dienste, die aufbauend auf dem bestehenden Webservice/API zusätzlich eine Excel Integration anbieten möchten
2. Wo finde ich die Office (Web) Add-Ins in Excel?
Office Add-Ins - fallweise auch Web Add-Ins genannt - werden werden über das Menü Einfügen -> Store angeboten und können mit dem Button Hinzufügen in der aktuellen Excel Umgebung installiert werden:
Nach dem Hinzufügen wird je nach Konzeption des Add-Ins direkt eine Taskpane angezeigt ...
... oder - bei neueren Taskpane Add-Ins - sogenannte Add-In Commands in der Menüleiste angezeigt werden (der dann beispielsweise die Taskpane startet):
3. Welche Typen von Office (Web) Add-Ins gibt es?
Typ #1: Taskpane Add-Ins
Taskpane Add-Ins ("Word, Excel, and PowerPoint Add-ins that extend functionality") erzeugen eine Taskpane (per default am rechten Rand), diese ist üblicherweise als User Interface zur Ablaufsteuerung für den dahinterstehenden Webservice/API konzipiert und erweitert die Funktionalität von Excel. Die neueren Taskpane Add-In Generationen erzeugen auch Add-In Commands im Ribbon:
Die Taskpane ist nicht an ein bestimmtes Sheet gebunden und daher auch nicht am Zellraster auszurichten sondern ist an der Excel Arbeitsmappendatei als Ganzes angedockt. Sie kann am linken oder rechten Rand angeheftet oder auch frei schwebend über der Arbeitsmappe platziert werden und ist in allen Sheets der Datei aktiv. Beim Neustart einer Excel-Datei, die mit aktiver Taskpane gespeichert wurde, wird diese (leider) nicht automatisch gestartet. Die Taskpane muß (derzeit) nach jedem Neustart von Excel mit dem Button im Ribbon aktiviert werden. Bei den älteren Add-In Generationen ohne Add-In Commands erfolgt die Aktivierung der Taskpane noch (etwas mühsamer) über den "Meine Add-Ins" Bereich im Store-Dialog.
Beim Klick in die Taskpane wird das Kontextmenü in der rechten oberen Ecke sichtbar, die beispielsweise den Reload der Anwendung nach aufgetretenen Fehlern / Timeouts ermöglicht (oder auch wie im Webbrowser mit Strg + F5).
Typ #2: Content Add-Ins
Content Add-Ins ("Excel and PowerPoint add-ins that create new objects") erzeugen interaktive, webbasierte Objekte in einem Excel Sheet, derzeit werden diese häufig für Visualisierungs- oder Medienobjekte verwendet:
Das Content Object gehört zu einem bestimmten Excel Sheet und es wird am Zellraster - vergleichbar zu einem Diagrammobjekt - ausgerichtet (am einfachsten mit gedrückter ALT-Taste) , es kann also nicht wie eine Taskpane (siehe oben) am linken oder rechten Rand angedockt werden. Beim Neustart der Excel-Datei wird ein mitgespeichertes Content Add-In automatisch gestartet und aktualisiert.
Beim Klick in das Content Object wird das Kontextmenü in der rechten oberen Ecke sichtbar, die beispielsweise den Reload der Anwendung nach aufgetretenen Fehlern / Timeouts oder das Löschen des Objekts ermöglicht.
Exkurs: welche Typen von klassischen (Excel) Add-Ins gibt es?
Klassische Add-Ins sind entweder Excel Add-Ins (= programmiert in VBA) oder COM Add-Ins (= programmiert in VB, C#, o.ä.). Diese Differenzierung ist sehr gut im Dialog Excel Optionen -> Add-Ins zu sehen:
Wie bereits weiter oben umfassender beschrieben, können klassische Add-Ins nur im Excel Client, nicht aber in Excel Online oder am iPad verwendet werden.
4. Über welche Kanäle können Office (Web) Add-Ins bezogen werden?
Office (Web) Add-Ins in Excel können über 3 Veröffentlichungskanäle verteilt bzw. bezogen werden (wie der Name schon sagt, sind Outlook Add-Ins nicht für Excel Anwendungen relevant):
Diese 3 Kanäle sind auch im Office Add-ins Dialog von Excel wiederzufinden:
Hinweis: bei Verwendung eines SharePoint App Catalogs gibt es auch noch die Kategorie "My Organization" ... diese Option betrachten wir aber als logischen Teil des "Admin Managed" Kanals.
Veröffentlichungskanal #1: Office Store ("public")
Über den Office Store können von Entwicklern veröffentlichte Office (Web) Add-Ins bezogen werden. Viele dort angebotene Add-Ins sind kostenlos oder es steht zumindest eine kostenlose Testversion zur Verfügung. Die Veröffentlichung kann vom Entwickler auf bestimmte Länder eingeschränkt werden und jedes Add-In kann verschiedenen Store-Kategorien zugeordnet werden.
Im Trust Center von Excel Desktop - erreichbar über Datei -> Optionen -> Trust Center -> Trust Center Einstellungen - kann der Zugang zum Office Store gesperrt werden (ebenso wie die Verwendung von Web Add-Ins generell unterbunden werden kann):
Parallel dazu kann der Admin einer Office 365 Infrastruktur zentral steuern, ob dem einzelnen User der Zugang zum Office Store ...
... zur Verfügung steht oder nicht:
In unserem Test hat die Deaktivierung dieser Option jedoch nicht auf die Clients durchgeschlagen ...?!
Veröffentlichungskanal #2: Admin Managed ("private")
Auf diese Weise können einerseits firmenspezifische Excel Web Add-Ins ("Line-of-Business Add-Ins") bereitgestellt werden, andererseits können auch öffentliche Add-Ins aus dem Office Store ("Office Store Add-Ins") vom Administrator "gefeatured" werden. Die Zuweisung erfolgt über das Office 365 Admin Center (= Cloud) oder den SharePoint App Catalog (= on premises) an alle oder an ausgewählte Mitarbeiter.
Hier ein kurzer Snapshot zur Vorgehensweise im Office 365 Admin Center:
Über den Button Add-In hochladen wurde das data1.io Add-In direkt aus dem Office Store hinzugefügt, über den folgenden Dialog kann eine Zuweisung zu spezifischen Benutzergruppen oder zu allen Mitarbeitern erfolgen:
Hier der abschließende Hinweis:
In unserem Test kam es zu Komplikationen in Excel Desktop. Das Hinzufügen des Add-Ins zum Admin Managed Bereich hat einwandfrei funktioniert, nach dem Löschen des Add-Ins aus dem Office 365 Admin Portal wurde in Excel Desktop seltsamerweise die Buttongruppe "Add-In" (u.a. mit dem Store-Button) entfernt, sodaß der Store nicht mehr erreichbar war. Durch das Zurücksetzen der Ribbon-Anpassungen konnte der Effekt wieder rückgängig gemacht werden.
Mehr über Admin Managed erfahren ...
Veröffentlichungskanal #3: Shared Folder ("Sideloading")
Über den Trusted Catalogs Table kann ein Office (Web) Add-In auf einem einzelnen Client hinzugefügt werden. Dabei wird ein Ordnerpfad angegeben, Excel zeigt dann alle Web Add-Ins in der Kategorie Shared Folder an, für die eine sogenannte XML-Manifest-Datei in dem angegebenen Ordner verfügbar ist.
In Excel Online gibt es übrigens eine vergleichbare Funktion, dort wird allerdings nicht ein ganzer Ordner definiert sondern direkt das XML-Manifest in die Add-In Liste hochgeladen. Dieser Veröffentlichungskanal ist beispielsweise für das sogenannte Sideloading im Entwicklungsteam eines Office (Web) Add-Ins sehr nützlich.
5. Verfügbarkeit von Office (Web) Add-Ins nach Plattformen
Abschließend noch der aktuelle Stand zur Verfügbarkeit der Office (Web) Add-Ins nach Office Apps (Excel, Outlook, usw.) und Plattform (Office Online, Office Desktop 2013, usw.). Office (Web) Add-Ins sind also bisher noch nicht auf mobilen Office Apps verfügbar:
6. Fazit
Office (Web) Add-Ins eröffnen in Excel die Möglichkeit, die riesige Welt der Webservices/APIs zu nutzen und beispielsweise cloud-basierte Lösungen für das Forecasting (bspw. über data1.i0) oder für Predictive Analytics (bspw. über Azure Machine Learning) direkt in Excel zu nutzen. Die einfache Distribution über den Office Store und die unternehmensspezifischen Kataloge ist sehr vielversprechend, dazu die Möglichkeit zum Continuous Deployment der dahinterliegenden Webservices ohne aufwendige Update- und Migrationsszenarien. Im Detail ist sicher noch nicht alles ausgereift, die Entwicklung geht aber sehr vielversprechend voran.
Quellen:
https://dev.office.com/docs/add-ins/overview/office-add-ins
https://dev.office.com/add-in-availability
https://msdn.microsoft.com/de-de/library/office/jj220082.aspx
https://msdn.microsoft.com/de-de/library/office/fp123515.aspx
https://dev.office.com/docs/add-ins/overview/add-in-changelog