To Do mit VBA und Power Automate steuern

In einem weiteren Artikel namens “To Do-Aufgabe mit Power Automate und VBA anlegen” (www.vbentwickler.de/431) haben wir die Grundlagen zur Steuerung von Microsoft To Do mit VBA über Power Automate beschrieben und einen ersten Anwendungsfall vorgestellt – das Anlegen einer Aufgabe für eine vorgegebene Liste. In diesem Artikel haben wir die wichtigsten Vorbereitungen getroffen, nämlich das Anlegen eines Power Automate Kontos und das Freigeben des Zugriffs auf das To Do-Konto, dessen Listen und Aufgaben wir verwalten wollen. Dabei schauen wir uns in diesem Artikel an, wie wir die Aufrufe noch genauer gestalten können, um beispielsweise die Liste einzustellen, der wir eine neue Aufgabe hinzufügen. Außerdem schauen wir uns an, wie wir Aufgaben auslesen, bearbeiten oder löschen können und wie wir Listen auslesen, anlegen, bearbeiten oder löschen können. Es gibt viel zu tun!

Weiterlesen

VBA-Editor: Klasseneigenschaften per Mausklick

Wenn wir im VBA-Editor benutzerdefinierte Klassen programmieren wollen, verwenden wir für Eigenschaften üblicherweise eine private Variable, die wir über eine öffentliche Property Set/Let-Prozedur mit einem Wert füllen und mit einer Property Get-Prozedur auslesen können. Das sind mindestens sieben Zeilen je Eigenschaft, was jede Menge Tipparbeit und Aufwand bedeutet und außerdem noch fehleranfällig ist. Selbst Copy und Paste macht diese Aufgabe nicht wesentlich angenehmer. Wohl dem, der weiß, wie er den VBA-Editor programmiert, sodass er solche Aufgaben mit wenigen Mausklicks automatisieren kann. Hier gibt es verschiedene Ansätze, die wir uns in diesem Artikel ansehen und auch umsetzen.

Weiterlesen

Menüs im VBA-Editor anpassen

Viele Themen in diesem Magazin drehen sich um die Programmierung des VBA-Editors. Damit erweitern wir das wichtigste Werkzeug für Programmierer, die sich um die Automation von Anwendungen wie Access, Excel, Outlook oder Word beschäftigen. Ein wichtiger Teil des VBA-Editors sind die Menüleisten, Symbolleisten und Kontextmenüs. Was sind diese drei Elemente überhaupt und wie können wir diese anpassen – sowohl über die Benutzeroberfläche als auch per VBA? Dieser Artikel beleuchtet die wichtigsten Möglichkeiten und zeigt, wie Du das Menüsystem nutzen kannst, um einen optimalen Workflow zu gewährleisten und auch Deine eigenen Erweiterungen, beispielsweise in Form von COM-Add-Ins, an der richtigen Stelle einzubauen.

Weiterlesen

Word: Dokument mit Ribbon und VBA-Funktionen

Nicht jeder, der seine Word-Dokumente mit ein paar zusätzlichen VBA-Funktionen ausstatten möchte, will direkt ein COM-Add-In dafür programmieren. Das ist auch nicht nötig, denn wir können solche Funktionen auch einfach zu einem Word-Dokument hinzufügen und die Funktionen in einem integrierten Ribbon verfügbar machen. Wie das gelingt, zeigen wir an einem einfachen Beispiel. Dabei wollen wir das aktuelle Dokument als PDF-Dokument in das gleiche Verzeichnis wie das Dokument exportieren. Einem zweiten Ribbonbefehl fügen wir noch einen Schritt hinzu, der das frisch erstellte PDF-Dokument direkt in die Zwischenablage kopiert, damit es beispielsweise gleich in eine E-Mail eingefügt werden kann.

Weiterlesen

VBA Basics: Mit Arrays programmieren

Arrays sind eine einfache Möglichkeit, mit VBA-Bordmitteln mehrere Werte unter einem einzigen Namen zu speichern und effizient auf diese Werte zuzugreifen. In diesem Artikel geben wir eine umfassende Einführung in die Verwendung von Arrays in VBA einschließlich der Definition, Deklaration, Manipulation und der Anwendung in verschiedenen Szenarien.

Weiterlesen

Aufgaben mit Microsoft To Do verwalten

Auf der Suche nach einer einfachen Verwaltung für Aufgaben, sowohl privat als auch geschäftlich, bin ich wieder einmal über Microsoft To Do gestolpert. Was ich suchte, war eine App, in der ich Aufgaben einfach in Projekte strukturieren konnte und die mir die Möglichkeit gibt, diese mit einem Erledigungsdatum zu versehen. Außerdem wollte ich eine Übersicht über die heute zu erledigenden Aufgaben haben. Schließlich gibt es noch zwei weitere Anforderungen: Erstens sollte die App nicht nur auf dem Windows Desktop nutzbar sein, sondern auch von mobilen Geräten aus. Zweitens habe ich mir gewünscht, dass ich die Listen auch per VBA aus Excel-Tabellen oder auch einer Datenbank heraus befüllen kann. In einer Artikelreihe schauen wir uns an, wie all das funktioniert. In diesem Artikel betrachten wir erst einmal die Möglichkeiten von Microsoft To Do in der Windows App.

Weiterlesen

Dateiauswahl-Dialog-Assistent programmieren

Dateidialoge benötigt man immer wieder. Ob man nun Dateien zum Öffnen oder Bearbeiten auswählen möchte, ob man einen Pfad zum Speichern einer Datei braucht oder ob man ein Verzeichnis selektieren will – am einfachsten geht das mit den praktischen Dateidialogen. Die Office-Bibliothek bietet sogar alle benötigten Varianten über die FileDialog-Klasse an. Dumm ist nur, dass man nicht ständig Filedialoge programmiert, sondern nur alle paar Wochen, Monate oder sogar Jahre. Dann muss man sich immer wieder einarbeiten, um die verschiedenen Parameter – Titel, Schaltflächenbeschriftungen, Standardverzeichnis und -dateiname, Filter, Dateiendungen und so weiter zu definieren. Wie schön wäre es doch, wenn wir solche Dateidialoge mit einem kleinen Assistenten zusammenstellen könnten. Also machen wir uns ans Werk und schaffen einen solchen Wizard!

Weiterlesen

twinBASIC: COM-Add-In für den VBA-Editor

Wer den VBA-Editor mit eigenen Tools erweitern möchte, kommt um die Programmierung von COM-Add-Ins kaum herum – zumindest nicht, wenn er eine schicke Benutzeroberfläche und die Integration in Menüs, Symbolleisten und Kontextmenüs wünscht. In diesem Artikel zeigen wir daher, wie wir die Basis für ein solches COM-Add-In mit twinBASIC programmieren. Ausgehend davon kannst Du direkt loslegen und Deine gewünschten Funktionen einbauen – es sind nur jeweils wenige Anpassung notwendig. Wir erklären Schritt für Schritt, wie die Basis des COM-Add-Ins aufgebaut ist und welche Anpassungen Du vornehmen musst, um ein COM-Add-In für Deine eigenen Anwendungen zu bauen.

Weiterlesen

Klassen programmieren unter VBA

Neben den Standardmodulen gibt es in VBA-Projekten auch noch einen weiteren Typ von Modulen, nämlich die Klassenmodule. Diese kommen wiederum in zwei Ausführungen: Es gibt alleinstehende Klassenmodule und eingebaute Klassenmodule, die den Code zu bestimmten Objekten enthalten – wie beispielsweise die Klassenmodule zu Formularen und Berichten in Access, zu Word-Dokumenten für das Dokument oder in Excel für Worksheet und Workbook. Auch in Outlook gibt es Klassenmodule. Wir wollen uns an dieser Stelle jedoch auf die alleinstehenden Klassenmodule konzentrieren, also auf solche, die wir selbst anlegen müssen. Hier schauen wir uns an, warum man diese überhaupt nutzen sollte, welche Anwendungszwecke es gibt und welche Best Practices sich für uns etabliert haben.

Weiterlesen

Wozu mit Klassen programmieren?

Wer die Office-Anwendungen Access, Excel, Outlook, PowerPoint oder Word mit VBA programmiert, kann eine Menge erreichen, ohne jemals eine eigene Klasse zu programmieren. Wer sich die gesamten Möglichkeiten eröffnen will, kommt jedoch irgendwann nicht mehr um die Programmierung benutzerdefinierter Klassen herum. Dieser Artikel zeigt verschiedene Szenarien auf, wann man benutzerdefinierte Klassen programmieren und darauf basierende Objekte instanziieren kann und soll. Dabei geht es um Begriffe wie Eigenschaften, Methoden, Ereignisse und darum, wo und wie man Klassen einsetzt.

Weiterlesen