Einführung in die Arbeit mit Visual Basic für Applikationen in Excel (VBA) Show 12. Juli 2022 in Excel Das Tabellenkalkulationsprogramm Excel hat einen großen Funktionsumfang, den Sie mithilfe von VBA (Visual Basic für Applikationen) und Makros noch erweitern können. Sie möchten umfangreiche Aktionen nicht mehr manuell, sondern automatisch durchführen? Die Aufgaben sind komplex, beinhalten also zum Beispiel Wiederholungen oder Verzweigungen? Dann lohnt es sich, genaueres über Visual Basic für Applikationen in Excel zu lernen. Was ist VBA überhaupt?Visual Basic für Applikationen, kurz VBA, ist eine interpretierte Programmiersprache. Das heißt, sie liest einen Quellcode und führt ihn aus. Sie ist einheitlich für verschiedene Microsoft Office-Anwendungen verfügbar:
Die Skriptsprache findet auch bei anderen Programmen Anwendung, etwa denen der Corel Corporation. Nachfolgend finden Sie einige Beispiele dafür, was Sie mit VBA in Excel tun können:
Der Funktionsumfang ist groß und zielt in erster Linie darauf ab, Vorgänge zu automatisieren. Befehle können Sie auf andere Excel-Dateien übertragen oder zu einem späteren Zeitpunkt wieder ausführen. Zeitaufwändige Arbeiten erledigt das Programm für Sie ganz alleine. Sie müssen dafür lediglich den Code in einem entsprechenden Modul schreiben und diesen ausführen. Die Arbeit mit VBA in Excel hat viele Vor-, aber auch einige Nachteile:
Hinweis: Es gibt einen Unterschied zwischen VBA und VB (Visual Basic). Letzteres ist eine vollständige Programmiersprache. Sie dient dazu, fertige Programme zu erzeugen. Das kann zum Beispiel eine .exe-Datei sein, die direkt vom Betriebssystem ausgeführt wird. Auf dieser Sprache basiert VBA in Excel. Grundlagen der VBA-ProgrammierungDie Programmiersprache ist logisch aufgebaut. Sie konzipieren damit bestimmte Objekte, welche Befehle empfangen und ausführen können. Diese tun ausschließlich das, was Sie ihnen mithilfe des Codes aufgetragen haben. Es ist demnach essentiell, dass Sie beim Programmieren exakte Anweisungen schreiben. Tipp: Sie haben bei der Excel-Programmierung zwei Möglichkeiten. Sie können den Code selbst erstellen oder Ihre Arbeitsschritte aufzeichnen lassen. Für den jeweiligen Befehl, den Sie per Mausklick ausführen, wird dann ein Quelltext erstellt, welchen Sie kopieren oder anpassen können. Das erleichtert vielen den Einstieg ins Programmieren. Benutzerdefinierte oder komplexere Funktionen können Sie damit allerdings nicht umsetzen. a) Variablen, Datentypen und Operatoren Wie bei anderen Programmiersprachen gibt es bei VBA in Excel Variablen. Sie können unterschiedliche Werte annehmen und speichern oder verarbeiten diese. Als Beispiel sei hier eine Liste von Personen unterschiedlichen Alters genannt. Wäre das Alter als fixe Zahl festgelegt, könnten Sie es im Code nur auf sehr umständliche Weise ändern. Jeder Variable ist ein bestimmter Datentyp zugeordnet. Das können unter anderem diese sein:
Mit den Werten in Variablen können Sie rechnen. Das tun Sie mit Operatoren wie den folgenden:
b) Funktionen und Objekte Sie können verschiedene Funktionen festlegen. Diese bestehen aus:
Excel besteht aus verschiedenen Objekten, die Sie mit Befehlen oder Funktionen beeinflussen können. Im Excel-Objektmodell stehen diese in einer bestimmten Hierarchie bzw. einer Beziehung zu einander. Es gibt unter anderem folgende:
c) Eigenschaften, Methoden und Auflistungen Objekten können Sie bestimmte Eigenschaften zuweisen, wodurch sich die spezifischen Merkmale verändern. Sie möchten, dass das Objekt eine Aufgabe ausführt? Dann rufen Sie eine Methode auf. Beispiel: Wenn Sie für das Objekt „Workbook“ die „Close“-Methode aktivieren, schließen Sie diese. Alternativ können Sie die Arbeitsmappe auch speichern oder ähnliches. Es gibt einen Unterschied zwischen der Singular- und der Pluralversion eines Objekts. Mit Letzterer können Sie einen Vorgang für mehrere Objekte einer Auflistung durchführen. Makros und der Visual Basic-Editor in ExcelIn unserem Tutorial „Makros in Excel“ haben wir Ihnen bereits erklärt, wie Sie ohne VBA mit Makros in Tabellenkalkulationen arbeiten. Im Folgenden lesen Sie, wie Sie Makros mit dem Visual Basic-Editor erstellen können. Zur Erinnerung: Was sind Makros? Zuallererst gilt es, die Entwicklungsumgebung von Visual Basic für Applikationen in Excel zu finden:
Im Menü befindet sich nun der Reiter „Entwicklertools“. Dort können Sie ein Excel-Makro erstellen, indem Sie auf das entsprechende Feld klicken. Sobald Sie einen Namen eingeben und auf „Erstellen“ drücken, erscheint ein neues Modul im Visual Basic-Editor. Das Makro beginnt mit „Sub“ (kurz für „Subroutine“) und endet mit „End“. Alles, was dazwischen steht, wird ausgeführt, sobald Sie das Hallo-Makro aktivieren. Ein Makro, das Sie besonders häufig nutzen, können Sie an die Symbolleiste anheften:
Sie möchten zum Beispiel aus den Informationen in bestimmten Zellen ein Diagramm mit VBA in Excel erstellen? Dann fügen Sie ein Makro hinzu und geben diesen Code ein: „Dim meinDiagramm As ChartObject“ Fügen Sie ein Diagramm-Objekt, dessen Größe (Wert 1 und 2) sowie dessen Position (Wert 3 und 4) hinzu: „Set meinDiagramm = ActiveSheet.ChartObjects.Add(100, 50, 300, 300)“ Anschließend legen Sie fest, was Sie mit dem Objekt vorhaben. Hier verwenden Sie die aktuelle Auswahl als Daten für das Diagramm: „With meinDiagramm .Chart.SetSourceData Source:=Selection End With“ Das Ergebnis sieht anschließend folgendermaßen aus:
Excel Kursefür Anfänger oder Fortgeschrittene und Excel online Kurse mit echtem Live Trainer. Was kann ich mit VBA machen?3) Für welche Zwecke kannst du VBA verwenden?. Automatisierung von regelmäßigen Arbeitsschritten.. Bau von Excel-Tools (z.B. Angebots- & Rechnungsgenerator, Projektmanagementtool usw.). Daten, Tabellen, Diagramme zwischen Excel und den anderen Office Programmen austauschen.. Wird VBA noch genutzt?Damit ist nun endgültig klar, dass Visual Basic auch im Microsoft-Umfeld keine Zukunft mehr hat.
Warum Excel VBA?VBA ist eine Programmiersprache, die auf der Ausführung von Makros basiert. Mit VBA eröffnen sich für Sie nahezu unbegrenzte Möglichkeiten. Aus diesem Grund ist es sehr von Vorteil diese Programmiersprache zu kennen und in die alltäglichen Anwendungen von Excel miteinzubeziehen.
Was ist der Unterschied zwischen Makro und VBA?Beide Frameworks sind darauf ausgelegt, Personen, die sich nicht als Programmierer betrachten, zu befähigen, kleine Programme in Excel zu erstellen. Der grundlegende Unterschied besteht darin, dass VBA-Makros für Desktoplösungen entwickelt werden und Office Skripts für sichere, cloudbasierte Lösungen entwickelt wurden.
|