Video: jPlayDE - Ein kurzer Blick auf Historia 2025
Variablen spielen in den meisten Excel-Makros, auf die Sie stoßen, eine große Rolle. Sie können sich Variablen als Speicher-Container vorstellen, die Sie in Ihren Prozeduren verwenden können. Es gibt verschiedene Arten von Variablen, von denen jede mit dem Halten eines bestimmten Datentyps beauftragt ist.
Im Folgenden finden Sie einige der häufigsten Variablentypen, die Sie sehen werden:
-
String: Enthält Textdaten
-
Ganzzahl: Enthält numerische Daten von -32, 768 bis 32, 767 >
-
Enthält numerische Daten von -2, 147, 483, 648 bis 2, 147, 483, 647 Double:
-
Enthält numerische Gleitkommadaten < Variante: Enthält alle Arten von Daten
-
Boolesch: Enthält Binärdaten, die Wahr oder Falsch zurückgeben
-
Objekt: Enthält ein Objekt aus dem Excel-Objektmodell
-
Beim Erstellen Als Variable in einem Makro deklarieren Sie als Variable
. Dazu geben Sie Dim (Abkürzung für Dimension), dann den Namen Ihrer Variablen und dann den Typ ein. Zum Beispiel:
Dim MyText als String MyText = Range ("A1"). Wert Dim MyNumber als Integer MyNumber = Bereich ("B1"). Wert * 25 Dim MyObject als Arbeitsblatt Set MyWorksheet = Arbeitsblätter ("Sheet1")
Die Werte, die Sie Ihren Variablen zuweisen, stammen häufig aus Daten, die in Ihren Zellen gespeichert sind. Die Werte können jedoch auch Informationen sein, die Sie erstellen. Es hängt alles von der Aufgabe ab. Dieser Begriff wird deutlicher, wenn Sie die Makros in diesem Buch durchgehen.
Obwohl es möglich ist, Code zu erstellen, der keine Variablen verwendet, gibt es viele Beispiele für VBA-Code, bei denen Variablen
verwendet werden. Dafür gibt es zwei Hauptgründe. Erstens weiß Excel nicht von Natur aus, wofür Ihre Daten verwendet werden. Es werden keine Ziffern, Symbole oder Buchstaben angezeigt. Es sieht nur Daten. Wenn Sie Variablen mit bestimmten Datentypen deklarieren, helfen Sie Excel zu wissen, wie bestimmte Daten behandelt werden sollten, damit Ihre Makros die erwarteten Ergebnisse liefern. Zweitens helfen Variablen, indem Sie Ihren Code effizienter und verständlicher machen. Angenommen, Sie haben eine Nummer in Zelle A1, auf die Sie sich in Ihrem Makro immer wieder beziehen. Sie können diese Nummer abrufen, indem Sie jedes Mal auf die Zelle A1 zeigen, wenn Sie sie benötigen:
Sub Macro1 () Range ("B1"). Wert = Bereich ("A1"). Wert * 5 Bereich ("C1"). Wert = Bereich ("A1"). Wert * 10 Bereich ("D1"). Wert = Bereich ("A1").Wert * 15 End Sub
Dieses Makro würde jedoch bewirken, dass Excel Zyklen verschwendet, in denen immer die gleiche Zahl gespeichert wird, wenn Sie auf Zelle A1 zeigen. Wenn Sie Ihre Arbeitsmappe ändern müssen, damit sich die Zielnummer nicht in Zelle A1, aber beispielsweise in Zelle A2 befindet, müssen Sie Ihren Code bearbeiten, indem Sie alle Verweise von A1 auf A2 ändern.
Eine bessere Möglichkeit besteht darin, die Nummer nur einmal in Zelle A1 zu speichern. Sie können z. B. den Wert in der Zelle A1 in einer Integer-Variablen namens myValue speichern:
Sub WithVariable () Dim myValue As Integer myValue = Bereich ("A1"). Wertebereich ("C3"). Wert = meinWert * 5 Bereich ("D5"). Wert = meinWert * 10 Bereich ("E7"). Value = myValue * 15 End Sub
Dieser Ansatz verbessert nicht nur die Effizienz Ihres Codes (stellt sicher, dass Excel die Zahl in Zelle A1 nur einmal liest), sondern stellt auch sicher, dass Sie nur eine Zeile bearbeiten müssen, wenn sich das Design Ihrer Arbeitsmappe ändert…