VBA-Zellwert – Abrufen, setzen oder ändern
IN DIESEM ARTIKEL
Zellwert setzen
Bereich.Wert & Zellen.Wert
Setzen Sie die Werte mehrerer Zellen auf einmal
Zellwert festlegen – Text
Zellwert setzen – Variable
Zellwert holen
ActiveCell-Wert abrufen
Zellwert einer Variable zuweisen
Beispiele für andere Zellwerte
Zellwert kopieren
Zellwerte vergleichen
In diesem Tutorial lernen Sie, wie Sie mit VBA mit Zellwerten interagieren können.
Zellwert setzen
Um einen Zellwert festzulegen, verwenden Sie die Value-Eigenschaft des Range- oder Cells-Objekts.
Bereich.Wert & Zellen.Wert
Es gibt zwei Möglichkeiten, Zellen in VBA zu referenzieren:
Bereichsobjekt – Bereich („A2“).Wert
Zellen Objekt – Zellen(2,1).Wert
Mit dem Range-Objekt können Sie eine Zelle mit der Standardnotation „A1“ referenzieren.
Dadurch wird der Wert des Bereichs A2 = 1 gesetzt:
Bereich („A2“).Wert = 1
Das Cells-Objekt ermöglicht es Ihnen, eine Zelle anhand ihrer Zeilen- und Spaltennummer zu referenzieren.
Dadurch wird der Wert von Bereich A2 = 1 gesetzt:
Zellen(2,1).Wert = 1
Beachten Sie, dass Sie zuerst die Zeilennummer eingeben:
Zellen(Zeile_Zahl, Spalte_Zahl)
Setzen Sie die Werte mehrerer Zellen auf einmal
Anstatt auf eine einzelne Zelle zu verweisen, können Sie auf einen Bereich von Zellen verweisen und alle Zellwerte auf einmal ändern:
Bereich („A2:A5“).Wert = 1
Zellwert festlegen – Text
In den obigen Beispielen setzen wir den Zellwert gleich einer Zahl (1). Stattdessen können Sie den Zellenwert gleich einer Textzeichenfolge setzen. In VBA muss der gesamte Text von Anführungszeichen umgeben sein:
Bereich(„A2“).Wert = „Text“.
Wenn Sie den Text nicht mit Zitaten umgeben, wird VBA denken, dass Sie auf eine Variable verweisen…
Zellwert setzen – Variable
Sie können auch einen Zellwert gleich einer Variablen setzen
Dim strText als Zeichenfolge
strText = „Zeichenfolge“
Bereich („A2“).Wert = strText
Zellwert holen
Sie können Zellwerte mit der gleichen Value-Eigenschaft erhalten, die wir oben verwendet haben.
ActiveCell-Wert abrufen
So erhalten Sie den ActiveCell-Wert und zeigen ihn in einem Meldungsfenster an:
MsgBox ActiveCell.Wert
Zellwert einer Variable zuweisen
So erhalten Sie einen Zellwert und weisen ihn einer Variablen zu:
var als Variante dimmen
var = Bereich („A1“).Wert
Hier haben wir eine Variable vom Typ Variant verwendet. Variant-Variablen können jeden Typ von Werten annehmen. Stattdessen könnten Sie den Variablentyp String verwenden:
Dim var als Zeichenkette
var = Bereich („A1“).Wert
Ein Variablentyp String akzeptiert numerische Werte, speichert die Zahlen jedoch als Text.
Wenn Sie wissen, dass Ihr Zellwert numerisch sein wird, können Sie den Variablentyp Double verwenden (Double-Variablen können Dezimalwerte speichern):
Dim var als Double
var = Bereich („A1“).Wert
Wenn Sie jedoch versuchen, einen Zellwert mit Text in einer Doppelvariablen zu speichern, erhalten Sie einen Fehler:
Zellwertzuweisungsvariable erhalten
Beispiele für andere Zellwerte
Zellwert kopieren
Es ist einfach, einen Zellwert gleich einem anderen Zellwert zu setzen (oder einen Zellwert zu „kopieren“):
Bereich(„A1“).Wert = Bereich(„B1“).Wert
Sie können dies sogar mit Zellbereichen tun (die Bereiche müssen die gleiche Größe haben):
Bereich(„A1:A5“).Wert = Bereich(„B1:B5“).Wert
Zellwerte vergleichen
Sie können Zellwerte mit den Standardvergleichsoperatoren vergleichen.
Testen Sie, ob die Zellwerte gleich sind:
MsgBox Bereich(„A1“).Wert = Bereich(„B1“).Wert
Gibt TRUE zurück, wenn die Zellwerte gleich sind. Andernfalls FALSE.
Sie können auch eine If-Anweisung erstellen, um Zellwerte zu vergleichen:
Wenn Bereich(„A1“).Wert > Bereich(„B1“).Wert Dann
Bereich („C1“).Wert = „Größer als“.
Elseif Bereich(„A1“).Wert = Bereich(„B1“).Wert Dann
Bereich(„C1“).Wert = „Gleich“.
Sonst
Bereich („C1“).Wert = „Kleiner als“.
Ende Wenn
Sie können Text auf die gleiche Weise vergleichen (Denken Sie daran, dass VBA fallabhängig ist)