VBA… adé!

Eine für viele Nutzer unverzichtbare Funktion von Office ist die Automatisierung mittels VisualBasic. Da ist es ein Schock, dass diese Funktion in Office für Mac 2008 ersatzlos gestrichen wurde.

Gemäss Rücksprache mit Microsoft kann im Office:mac 2008 wirklich kein Makro geschrieben werden. Die User die diese Funktion nutzen wollen, müssen die Version Office:mac 2004 benutzen

Diese Information erhalte ich von der Pressefrau von Microsoft. Ich habe dort nachgefragt, weil ein Leser von mir wissen wollte, was denn die Meldung hier zu bedeuten hat:

Beim Öffnen einer Datei mit Makros wird man freundlich darauf hingewiesen, dass man diese Makros gefälligst entfernen sollte.

Also da glaubt man, alles gesehen zu haben, aber das haut mich nun doch aus den Socken. Sicher, nicht jeder Office-Anwender will auch seine eigenen Makros programmieren. Aber als Kummerbox-Betreuer weiss ich auch, dass man die Anwender nicht unterschätzen darf – gerade die treuen und intensiven Nutzer von Office stolpern irgendwann einmal über den Makro-Rekorder oder sogar den VBA-Editor und lernen den vielleicht nicht gerade zu lieben, aber immerhin zu schätzen.

Man kann die (womöglich über Jahre gepflegten) Makros nicht einfach so ersetzen

Und gerade die Unterstützung für VBA-Makros ist kein Feature, auf das man eben verzichtet oder dessen Fehlen man auf andere Weise wettmacht. Leute, die sie nutzen, haben sich über Jahre Wissen im Bereich Automatisierung aufgebaut. Man pflegt den Code über x Versionen und steckt viel Arbeitsaufwand in seine eigenen «Office-Features». Und all das wird von Microsoft mit einem Federstrich für nutzlos erklärt.

Ich habe Office 2008 bisher gescheut, aber das war nun das K. o. Ich persönlich werde mir den Einsatz von Microsoft-Produkten künftig noch gründlicher überlegen und immer die Alternative wählen, wenn es denn eine vernünftige Alternative gibt. Und die gibt es im Office-Bereich, Gott sei Dank!

VBA-Makros entsprechen nicht mehr dem neuesten Stand der Technik, trotzdem sollten sie nicht einfach verschwinden

Ich will nicht sagen, dass VBA bis in alle Ewigkeit sakrosankt sein müsste. Nein, wenn die Entwicklung weitergeht und man mehr mit AppleScript machen kann, dann wäre das begrüssenswert. AppleScript ist die Automatisierungssprache für den Mac und mit ihr könnte man Office besser in die Mac-Welt einbinden.

Was ich aber für schockierend halte, ist die Tatsache, dass Microsoft keinerlei Übergangszeit gewährt, die Leute nicht auf den bevorstehenden Umstieg vorbereitet, keine Hilfestellung dazu bietet und das Fehlen von VBA noch nicht einmal kommuniziert. Ich war an der Pressekonferenz, an der Office 2008 vorgestellt wurde, habe aber erst von der Frage eines Tagi-Lesers von diesem Umstand erfahren.

Die Kontinuität muss gewährleistet sein

So gehts nicht. Das wäre noch nicht einmal für den in einer Bananenrepublik beheimateten Softwarehersteller akzeptabel. Wenn das der Weg ist, wie Microsoft Produkte entwickelt, ist es ab sofort enorm gefährlich, sich für Microsoft-Produkte zu entscheiden. Die Dokumente sind das ganze Kapital, das man als Office-Arbeiter hat. Man muss sich sicher sein, dass Kontinuität gewährleistet ist. Dokumente müssen auch in der nächsten oder übernächsten Version noch brauchbar sein – und das gilt auch für die erweiterten Funktionen wie VBA. Man darf auch nicht vergessen, dass viele Geschäftslösungen auf VBA basieren und manch ein Entwickler damit seine Existenz verdient.

Und Microsoft bitte ich, mir noch die folgenden Fragen zu beantworten:

  • Warum ist VBA eliminiert worden?
  • Welche Automatisierungsmöglichkeiten gibt es in Office 2008?
  • Falls es keine gibt: Wie sollen sich Office-Anwender, die die Automatisierung nutzen wollen, längerfristig verhalten? Es kann ja im Interesse von Microsoft liegen, dass die nun endgültig bei Office 2004 bleiben?
  • Falls AppleScript die Antwort ist: Wie kann man den Übergang zu dieser Sprache möglichst «schmerzlos» gestalten? Wie kann man seinen Code «migrieren» oder Teile davon recyclieren?

2 Kommentare zu «VBA… adé!»

  1. Ich bin mir dir einverstanden darin, dass eine Makrosprache für ein Office-Paket Pflicht sein sollte. Warum Microsoft nicht schon lange .net-Unterstützung in Office eingebaut hat (wenn möglich gleich gekoppelt mit dem Visual Studio) sehe ich auch nicht ein.

    Aber, VBA als Sprache hat enorm viele Probleme, und die ganzen Applikationen die auf VBA basieren teilen all diese. Ich habe die Probleme, die VBA (spezifisch in Access) mit allen mehr als winzigen Makro-Projekten hat, mal hier zusammengefasst:
    http://www.haslo.ch/blog/whats-wrong-with-vba-13/

    Allerdings kommt das Ganze nicht ganz ohne Vorwarnung. Wenn wir mal hier gucken:
    http://msdn.microsoft.com/en-us/vbrun/ms788707.aspx
    …dann sehen wir, dass Microsoft vor unterdessen über 10 Jahren die unterdessen über 12 Jahre alte (und entsprechend veraltete, sie war schon damals nicht auf der Höhe der Zeit) Sprache VBA zum Abschuss freigegeben hat. Die Information, dass VBA zukünftig nicht mehr unterstützt wird, ist schon lange öffentlich.

    Lediglich dass Microsoft keine brauchbare Alternative an dessen Stelle setzt ist durchaus sehr schwach, da gehe ich völlig mit dir einig. Wie gesagt, ein Office-Paket ganz ohne Makros ist billig.

  2. Inzwischen habe ich von Microsoft eine Antwort erhalten – zwar nicht explizit auf die gestellten Fragen, aber doch immerhin so, dass etwas mehr Klarheit herrscht. Das Problem lag offenbar bei der Migration zur Intel-Prozessorfamilie. Es hiess, die Portierung hätte die Auslieferung von Office 2008 um zwei Jahre verzögert. (Was angesichts der sonstigen Probleme bei dieser Version womöglich so schlecht nicht gewesen wäre.) Warum die Intel-CPU ein Problem ist, leuchtet mir zwar nicht ganz ein, zumal Office 2004 mit Rosetta leidiglich auf Intel-Macs läuft. Jedenfalls soll VBA bei der nächsten Office-Version zurückkommen.
    Ob das dann noch jemanden interessiert, ist eine andere Frage.

Schreibe eine Antwort zu GuidoAntwort abbrechen