VBA-Zellenwert - Abrufen, Festlegen oder Ändern

In diesem Tutorial erfahren Sie, wie Sie mit VBA mit Zellenwerten interagieren.

Zellenwert festlegen

Um einen Zellenwert 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:

1 Bereich("A2").Wert = 1

Mit dem Cells-Objekt können Sie eine Zelle anhand ihrer Zeilennummer und Spaltennummer referenzieren.

Dadurch wird der Wert von Bereich A2 = 1 gesetzt:

1 Zellen(2,1).Wert = 1

Beachten Sie, dass Sie zuerst die Zeilennummer eingeben:

1 Zellen(Zeile_num, Spalte_num)

Legen Sie die Werte mehrerer Zellen gleichzeitig fest

Anstatt auf eine einzelne Zelle zu verweisen, können Sie auf einen Zellbereich verweisen und alle Zellwerte gleichzeitig ändern:

1 Bereich("A2:A5").Wert = 1

Zellenwert festlegen - Text

In den obigen Beispielen setzen wir den Zellenwert gleich einer Zahl (1). Stattdessen können Sie den Zellenwert gleich einer Textzeichenfolge festlegen. In VBA muss der gesamte Text von Anführungszeichen umgeben sein:

1 Range("A2").Value = "Text"

Wenn Sie den Text nicht in Anführungszeichen setzen, denkt VBA, dass Sie auf eine Variable verweisen…

Zellenwert festlegen – variabel

Sie können auch einen Zellenwert gleich einer Variablen setzen

1234 Dim strText als StringstrText = "Textzeichenfolge"Range("A2").Value = strText

Zellenwert abrufen

Sie können Zellenwerte mit derselben Value-Eigenschaft abrufen, die wir oben verwendet haben.

ActiveCell-Wert abrufen

So rufen Sie den ActiveCell-Wert ab und zeigen ihn in einem Meldungsfeld an:

1 MsgBox ActiveCell.Value

Zellenwert der Variablen zuweisen

So rufen Sie einen Zellenwert ab und weisen ihn einer Variablen zu:

123 Dim var als Variantevar = Range("A1").Wert

Hier haben wir eine Variable vom Typ Variant verwendet. Variant-Variablen können alle Arten von Werten annehmen. Stattdessen könnten Sie einen String-Variablentyp verwenden:

123 Dim var als Stringvar = Range("A1").Wert

Ein String-Variablentyp akzeptiert numerische Werte, speichert die Zahlen jedoch als Text.

Wenn Sie wissen, dass Ihr Zellenwert numerisch ist, können Sie einen Double-Variablentyp verwenden (Double-Variablen können Dezimalwerte speichern):

123 Dim var als Doublevar = Range("A1").Wert

Wenn Sie jedoch versuchen, einen Zellenwert mit Text in einer Double-Variablen zu speichern, erhalten Sie einen Typkonfliktfehler:

Andere Beispiele für Zellenwerte

Zellenwert kopieren

Es ist einfach, einen Zellenwert einem anderen Zellenwert gleichzusetzen (oder einen Zellenwert zu „kopieren“):

1 Range("A1").Value = Range("B1").Value

Sie können dies sogar mit Zellbereichen tun (die Bereiche müssen die gleiche Größe haben):

1 Bereich("A1:A5").Wert = Bereich("B1:B5").Wert

Zellenwerte vergleichen

Sie können Zellenwerte mit den Standardvergleichsoperatoren vergleichen.

Testen Sie, ob die Zellenwerte gleich sind:

1 MsgBox Range("A1").Value = Range("B1").Value

Gibt TRUE zurück, wenn die Zellenwerte gleich sind. Ansonsten FALSCH.

Sie können auch eine If-Anweisung erstellen, um Zellenwerte zu vergleichen:

12345678910111213 Wenn Range("A1").Value > Range("B1").Value ThenRange("C1").Value = "Größer als"Sonst Range("A1").Value = Range("B1").Value ThenRange("C1").Value = "Gleich"AndersRange("C1").Value = "Weniger als"Ende Wenn

Sie können Text auf die gleiche Weise vergleichen (denken Sie daran, dass bei VBA die Groß-/Kleinschreibung beachtet wird)

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave