Excel-VBA für Dummies
Excel-VBA für Dummies
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de
abrufbar.
4. Auflage 2022
© 2022 Wiley-VCH GmbH, Boschstraße 12, 69469 Weinheim, Germany
Original English language edition Excel VBA Programming For Dummies © 2022 by Wiley Publishing, Inc. All rights reserved including the right of reproduction in whole or in part in any form. This translation published by arrangement with John Wiley and Sons, Inc.
Copyright der englischsprachigen Originalausgabe Excel VBA Programming For Dummies © 2022 by Wiley Publishing, Inc.
Alle Rechte vorbehalten inklusive des Rechtes auf Reproduktion im Ganzen oder in Teilen und in jeglicher Form. Diese Übersetzung wird mit Genehmigung von John Wiley and Sons, Inc. publiziert.
Wiley, the Wiley logo, Für Dummies, the Dummies Man logo, and related trademarks and trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries. Used by permission.
Wiley, die Bezeichnung »Für Dummies«, das Dummies-Mann-Logo und darauf bezogene Gestaltungen sind Marken oder eingetragene Marken von John Wiley & Sons, Inc., USA, Deutschland und in anderen Ländern.
Das vorliegende Werk wurde sorgfältig erarbeitet. Dennoch übernehmen Autoren und Verlag für die Richtigkeit von Angaben, Hinweisen und Ratschlägen sowie eventuelle Druckfehler keine Haftung.
Print ISBN: 978-3-527-71959-4
ePub ISBN: 978-3-527-83812-7
Coverfoto: © Moon Safari – stock.adobe.com
Korrektur: Claudia Lötschert, Neuss
Dick Kusleika arbeitet seit mehr als 20 Jahren mit Microsoft Office. Er war 12 Jahre in Folge Microsoft MVP (Most Valuable Professional) und hat mehrere Bücher über Excel und Access geschrieben.
Für Nancy.
Dank an Rod Stephens für das Aufspüren von Fehlern und für wertvolle Anregungen.
Herzlich willkommen, angehender Excel-Programmierer …
Sie haben zweifellos gute Gründe, ein Buch über VBA-Programmierung zu lesen. Vielleicht haben Sie einen neuen Job bekommen (herzlichen Glückwunsch). Vielleicht versuchen Sie, einige der sich wiederholenden Datenverarbeitungsaufgaben, die Sie erledigen müssen, zu automatisieren. Vielleicht sind Sie tief im Herzen ein Computerfreak. Was auch immer der Grund ist, danke, dass Sie sich für dieses Buch entschieden haben.
In diesem Buch finden Sie alle Informationen, um schnell mit VBA loslegen zu können. Und selbst wenn Sie noch keinerlei Programmiererfahrung besitzen, wird Ihnen dieses Buch helfen. Anders als in den meisten anderen Programmierbüchern finden Sie hier genau die Fakten, die Sie benötigen, um schnell Ihre Fähigkeiten bei der VBA-Programmierung mit Excel auszubauen.
In jeder größeren Buchhandlung (sei es in Ihrem Städtchen oder online) finden Sie eine Vielzahl an Excel-Büchern. Anhand der folgenden Liste können Sie entscheiden, ob dieses Buch wirklich für Sie geeignet ist. Dieses Buch
Wenn Sie mit einer älteren Excel-Version arbeiten, könnte das Buch infrage kommen, aber einige Dinge haben sich geändert. Wahrscheinlich kommen Sie mit einer Vorauflage besser zurecht.
Und ja, dies ist kein Excel-Buch für Einsteiger. Wenn Sie nach einem allgemeinen Excel-Buch suchen, sehen Sie sich das folgende Buch an, das ebenfalls bei Wiley-VCH erschienen ist:
Dieses Buch gibt es auch zu früheren Excel-Versionen.
Beachten Sie, dass dieses Buch nicht Das vollständige Handbuch für die Excel-VBA-Programmierung für Dummies heißt. Dieses Buch deckt nicht alle Aspekte der Excel-Programmierung ab – aber man kann davon ausgehen, dass Sie wahrscheinlich nicht alle Informationen zu diesem Thema brauchen. Wenn Sie dieses Buch gelesen haben und glauben, Sie brauchen ein umfassenderes Buch zur Excel-Programmierung, empfehle ich Ihnen Excel-VBA Power-Programmierung für Dummies, ebenfalls bei Wiley-VCH erschienen.
Um den Inhalt besser zugänglich zu machen, haben wir dieses Buch in sechs Teile unterteilt:
Manchmal spreche ich über Tastenkombinationen – das bedeutet, Sie halten die eine Taste gedrückt, während Sie die andere drücken. +
bedeutet, dass Sie die
-Taste gedrückt halten, während Sie
drücken.
Für Menübefehle benutze ich ein spezielles Zeichen, um Elemente des Menübands voneinander zu trennen. Beispielsweise verwenden Sie den folgenden Befehl, um innerhalb einer Arbeitsmappe einen benannten Bereich zu erstellen:
FORMELN | DEFINIERTE NAMEN | NAMEN DEFINIEREN
FORMELN ist die Registerkarte oben im Menüband. DEFINIERTE NAMEN ist die Gruppe auf der Registerkarte FORMELN und NAMEN DEFINIEREN ist der eigentliche Befehl.
Der Visual Basic-Editor verwendet immer noch die alten Menüs und Menüleisten. Falls Sie also die Anweisung lesen, dass Sie EXTRAS | OPTIONEN wählen sollen, bedeutet dies, öffnen Sie das Menü EXTRAS und wählen Sie dort den Menübefehl OPTIONEN aus.
Bei der Programmierung mit Excel entwickeln Sie Code – das sind die Anweisungen, die Excel ausführt. Code in diesem Buch wird in nichtproportionaler Schrift dargestellt, etwa wie folgt:
Range("A1:A12").Select
Einige lange Codezeilen passen nicht in eine Zeile auf einer Buchseite. In diesem Fall verwende ich das Standardtrennzeichen von VBA, ein Leerzeichen gefolgt von einem Unterstrich. Ein Beispiel:
Selection.PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, _
Transpose:=False
Diesen Code können Sie genau so eingeben, aber auch innerhalb einer Zeile (dann lassen Sie das Leerzeichen und den Unterstrich weg).
Es gibt nicht nur gute Menschen. Man hat den Eindruck, es gibt immer irgendeinen findigen Betrüger, der versucht, Sie auszunutzen oder irgendwelche Probleme zu verursachen. In der Programmierwelt ist das nicht anders. Vielleicht haben Sie schon von Computerviren gehört, die recht unangenehme Dinge mit Ihrem System veranstalten. Aber wussten Sie auch, dass sich Computerviren auch in einer Excel-Datei befinden können? Ganz recht. Es ist sogar ziemlich einfach, mit VBA einen Computervirus zu schreiben. Ein unbedarfter Benutzer kann eine Excel-Datei öffnen und den Virus auf andere Excel-Arbeitsmappen übertragen und sogar andere Systeme damit infizieren.
Im Laufe der Jahre hat sich Microsoft immer mehr Gedanken über Sicherheitsaspekte gemacht. Das ist nicht schlecht, bedeutet aber auch, dass die Excel-Benutzer wissen müssen, was passiert. Über den Befehl DATEI | OPTIONEN | TRUST CENTER erreichen Sie die Sicherheitseinstellungen von Excel. Hier gibt es unzählige Optionen. Man erzählt sich, dass es schon Benutzer gegeben haben soll, die dieses Dialogfeld geöffnet haben und nie wieder gesehen wurden.
Klicken Sie auf die Registerkarte MAKROEINSTELLUNGEN (links im Dialogfeld TRUST CENTER). Die folgenden Optionen werden angezeigt:
Überlegen Sie sich das folgende Szenario: Sie schreiben eine Woche lang an einem genialen VBA-Programm, das Ihr Unternehmen völlig revolutionieren wird. Sie testen es sorgfältig und senden es an Ihren Chef. Er ruft Sie zu sich ins Büro und teilt Ihnen mit, dass Ihr Makro überhaupt nichts bewerkstelligt. Was ist passiert? Wahrscheinlich gestatten die Sicherheitseinstellungen Ihres Chefs nicht, das Makro auszuführen. Oder er verwendet die Standardeinstellung von Microsoft und deaktiviert beim Öffnen einer Datei alle Makros.
Was lernen wir daraus? Nur weil eine Excel-Arbeitsmappe ein Makro enthält, gibt es keine Garantie dafür, dass das Makro jemals ausgeführt wird. Es hängt alles von den Sicherheitseinstellungen ab und ob der Benutzer Makros für diese Datei aktiviert oder deaktiviert.
Für die Arbeit mit diesem Buch müssen Sie Makros für die Dateien aktivieren, mit denen Sie arbeiten. Ich empfehle Ihnen, die zweite Sicherheitsstufe zu verwenden. Wenn Sie eine von Ihnen angelegte Datei öffnen, können Sie die Makros einfach aktivieren. Wenn Sie eine Datei von jemandem öffnen, den Sie nicht kennen, sollten Sie die Makros deaktivieren und den VBA-Code daraufhin überprüfen, ob er gefährliche oder böswillige Dinge enthält. In der Regel ist verdächtiger VBA-Code leicht zu erkennen.
Eine weitere Option ist es, einen vertrauenswürdigen Ordner einzurichten. Wählen Sie DATEI | OPTIONEN | TRUST CENTER | EINSTELLUNGEN FÜR DAS TRUST CENTER. Wählen Sie die Option VERTRAUENSWÜRDIGE SPEICHERORTE und wählen Sie dann einen Ordner aus, der als vertrauenswürdiger Ort gelten soll. Speichern Sie hier Ihre vertrauenswürdigen Arbeitsmappen, für die Excel Sie nicht mehr fragt, ob Sie die Makros aktivieren wollen. Wenn Sie etwa die Beispieldateien für dieses Buch herunterladen, können Sie sie in einem vertrauenswürdigen Ordner ablegen.
Menschen, die Bücher schreiben, zielen in der Regel auf einen bestimmten Leserkreis ab. Die folgenden Punkte beschreiben den hypothetischen Leser für dieses Buch:
In diesem Buch heben Symbole bestimmte Arten von wertvollen Informationen hervor, die Ihre Aufmerksamkeit erfordern. Im Folgenden finden Sie die verwendeten Symbole mit einer kurzen Beschreibung.
Dieses Buch enthält alles, was Sie benötigen, um VBA-Programmierung auf einem fortgeschrittenen Niveau zu erlernen. Das Buch beginnt mit den Grundlagen der Aufzeichnung von Makros und steigt dann Kapitel für Kapitel tiefer in die Materie ein.
Wenn Excel-Makros völliges Neuland für Sie sind, beginnen Sie mit Teil I, damit Sie sich mit den Grundlagen der Makro-Aufzeichnung vertraut machen. Falls Sie Erfahrungen mit der Aufzeichnung von Makros besitzen, aber die dahinterstehenden VBA-Konzepte besser verstehen möchten, lesen Sie Teil II und Teil III. Dort werden Sie genau erfahren, wie VBA funktioniert; außerdem lernen Sie dort die Grundlagen kennen, die Sie für die Implementierung Ihres eigenen Codes benötigen.
Wenn Sie mit Programmierkonzepten vertraut sind und nur einen schnellen Überblick über einige der fortgeschritteneren Techniken wie die Erstellung Ihrer benutzerdefinierten Funktionen und Add-Ins erhalten möchten, können Sie gerne sofort zu Teil IV springen.
Für dieses Buch gibt es eine eigene Website, von der Sie die Beispieldateien herunterladen können. Dazu öffnen Sie in Ihrem Browser die folgende Seite:
www.wiley-vch.de/ISBN9783527719594
Diese Beispieldateien sparen Ihnen eine Menge Schreibarbeit. Außerdem können Sie damit spielen und mit verschiedenen Änderungen experimentieren. Experimentieren ist die beste Methode, VBA zu beherrschen.