(C) 2009 - 2018 by Mourad Louha · Alle Rechte vorbehalten

In Excel 2007 kann man den Diagrammtitel sowie einen Achsentitel mit einer Formel verknüpfen, so dass man diese nicht immer manuell ändern muss. Leider konnte diese Formel in Excel 2007 nicht per VBA gesetzt werden. In Excel 2010 ist dies nun möglich, wie die Beispieldatei zeigt, die Sie am Ende des Artikels herunterladen können. Folgend ein Screenshot der Datei, die ich der Einfachheit halber in Englisch erstellt habe, da dieser Artikel auch in Englisch verfügbar ist.

Excel 2010 VBA AxisTitle und ChartTitle Objekte

Read more


Seit geraumer Zeit werte ich meine Webserver Logfiles auch mit Excel 2010 aus. Klar, es gibt eine Menge Produkte zum detaillierten Auswerten von Logfiles, von welchen auch einige bei mir zum Einsatz kommen. Jedoch bietet mir Excel 2010 die Möglichkeit, die Rohdaten relativ schnell und einfach zu importieren und über benutzerdefinierte Filter spezielle Kennzahlen genauer anzuschauen. Leider ist es aber so, dass ich oft bei der Menge an Daten während des Lesens die Zeile am Bildschirm „verliere“. Nun kann man beispielsweise den Zoom höher setzen oder auch einen Rahmen um die Zellen legen; lieber ist mir jedoch ein Tool welches die Zeilen hervorhebt, sobald eine Zelle in der Tabelle angeklickt wird. Da Excel leider eine solche Funktionalität nicht zur Verfügung stellt, habe ich ein eigenes Add-In in VBA entwickelt. Folgend eine Abbildung des Tools:

VBA Highlighter

Read more


Im Rahmen unseres Projektes zur Generierung von Seriennummern stellte sich das Problem, ein Papierformat eines speziell zum Ausdruck von Typenschildern installierten Druckers anzusprechen. Das dauerhafte Umstellen des Standarddruckers in Windows war keine Lösung, denn zum Einen nutzen die Benutzer unsere Anwendung parallel mit weiteren Excel Arbeitsmappen und zum Anderen sich verschiedene Größen von Typenschildern zu drucken. Auch das ständige Auswählen des Druckers wäre nicht praktikabel.

Im Folgenden werden wir unsere Windows API Lösung vorstellen, die einerseits das Auswählen eines Druckers ermöglicht und andererseits alle verfügbaren Papierformate eines Druckers anbietet. Der Code hierzu den wir an dieser Stelle freigeben ist nur ein Auszug aus der Echtanwendung. Letztere merkt sich pro einer Maschine assoziiertes Typenschild das passende Format und den passenden Drucker. Somit braucht der User nur noch kurz die Angaben prüfen und kann sich auf das Wesentliche konzentrieren.

In der Beispielanwendung – die sie auch herunterladen können – haben wir eine Userform erstellt, die zwei Kombinbationsfelder enthält. Erstere nimmt die Liste der installierten Drucker auf, die zweite Combobox enthält nach Auswahl eines Druckers die passenden Papierformate.

Drucker und Papierformate in VBA ermitteln und verwenden

Read more


In meinem Lieblingsforum zu Microsoft Office stellte jemand die Frage, ob es möglich ist, in VBA ein Bilderkarussell zu programmieren. Hierbei soll sich eine bestimmte Anzahl von Bildern beim Anklicken einer kreisförmigen Bahn folgen. Beispielsweise würde beim Anklicken eines Bildes in der folgenden Abbildung, das Bild Nummer 1 die Position von Bild Nummer 2 einnehmen, Bild 2 wandert an die Stelle von Bild 3 usw.. Die Beispieldatei inklusive dem VBA Code können Sie am Ende des Artikels herunterladen.

Excel VBA Animator

Read more


Ab und zu bin ich auch im französischen Microsoft Office TechNet Forum unterwegs, einerseits um ein bisschen mein Französisch aufzufrischen und andererseits manchmal einfach aus Neugier. Vor einiger Zeit fragte dort jemand, ob es möglich ist, alle in Word 2010 als vertrauenswürdig eingestuften Dokumente zu ermitteln und in einer Tabelle aufzulisten.

Die Optionen von Office 2010 bieten hierzu leider keine Möglichkeit, denn der Dialog mit den Optionen zu den vertrauenswürdigen Dokumenten kennt nur wenige Einstellmöglichkeiten, unter anderem eine Option, alle bereits als vertrauenswürdig eingestuften Dokumente zu entfernen. Eine Liste der bereits hinzugefügten Dokumente fehlt jedoch.

Vertrauenswürdige Ordner und Dokumente

So hatte ich die Idee, selber ein kostenloses Excel Add-In zu entwickeln und alle vertrauenswürdigen Dokumente in einer Excel Tabelle aufzulisten. Und wenn ich schon mal dabei bin, so hatte ich es mir dann überlegt, wäre es sinnvoll, auch gleich die vertrauenswürdigen Dokumente von PowerPoint 2010 und Word 2010 sowie die vertrauenswürdigen Ordner für Office 2010 und Office 2007 in die Liste mit aufzunehmen.

Read more


Vor einiger Zeit stellt jemand im Office Lösung Forum die Frage, wie Bezüge in einer Excel Datei zu einer anderen Datei dynamisch aufgebaut werden können. Folgende Lösung basiert darauf, die Verknüpfung auf den externen Bereich anhand der Formeln BEREICH.VERSCHIEBEN(), INDIREKT() und ADRESSE() aufzubauen.

Nehmen wir mal an, es liegen uns verschiedene Dateien vor, die vom Aufbau her, alle gleich strukturiert sind. Folgende Abbildung zeigt 4 Dateien, die jeweils fiktive Tageswerte pro Woche enthalten. Die Werte sind in den Zeilen C4 bis C10 abgelegt.

Excel 2010

Read more


In meinem Artikel „Excel VBA Application Objekte per Windows API erzeugen (Teil 1)“ hatte ich eine Möglichkeit vorgestellt, wie über Windows API Funktionen alle geöffneten Excel Instanzen ermittelt werden können und gegebenenfalls daraus VBA Application Objekte erzeugt werden können. Das funktionierte jedoch nur mit den Excel Instanzen, in denen eine Arbeitsmappe geöffnet war. Dieser Artikel stellt nun eine Lösung vor, wie in Excel Instanzen ohne geöffnete Mappe per Windows API eine neue Mappe angelegt wird und anschließend das VBA Application Objekt erzeugt wird.

VBA Window Handles

Die Idee war insofern, ein neues Dokument in der Excel Instanz anzulegen und anschließend den Scan-Vorgang für alle Fensterhandles in dieser Instanz zu wiederholen. Um ein neues Dokument in Excel anzulegen, kann die Tastenkombination „Strg + N“ verwendet werden. Am einfachsten wäre es sicherlich einfach den Tastendruck und gedrückt halten für „Strg“ und anschließend die Taste „N“ zu simulieren.

Read more


In meinem Beitrag „Die wichtigsten Änderungen in VBA für Excel 2010“ vom 5. August 2009 hatte ich bereits über einige Änderungen am VBA Objektmodell in Excel 2010 berichtet. Zudem hatte ich zum damaligen Zeitpunkt begonnen, eine VBA Anwendung zu entwickeln, die das automatisierte Parsen aller VBA Objekte, Methoden, Eigenschaften und Konstanten ermöglicht. Erst vor kurzem hatte ich die Zeit, den „Excel VBA Typlib Parser“ fertig zu stellen.

Die Anwendung ist Freeware und kann am Ende des Beitrages heruntergeladen werden. Die Ausgabetabellen sind zwar geschützt, jedoch ist das Kennwort im Quellcode zu finden, welcher ungeschützt eingesehen werden kann. Die Copyright Tabelle und die Mappe sind ebenfalls geschützt, diese Kennwörter sind nicht öffentlich zugänglich.

Die Anwendung nutzt die Bibliothek „TlbInf32.dll“ aus meinem Systemverzeichnis, welche Funktionen zur Verfügung stellt, um automatisiert Typbibliotheken zu scannen. Ganz wichtig: an dieser Stelle ist anzumerken, dass diese Bibliothek zwingend benötigt wird und auch korrekt in Windows registriert sein muss. Die Software ist ohne diese Bibliothek nicht lauffähig. Die Bibliothek ist aus rechtlichen Gründen im Download der Anwendung nicht enthalten.

Excel VBA Typelib Scanner

Read more