VBA-Wert - Wie verwende ich die Excel VBA-Wertfunktion?

Inhaltsverzeichnis:

Anonim

VBA-Wert

Die Reise von VBA beginnt mit dem Wissen, wie die Werte in den Zellen gespeichert werden. Daher ist die Kenntnis der VALUE-Funktion unter VBA von größerer Bedeutung. Nach dem Studium der VBA VALUE-Eigenschaft können Sie wissen, wie die Werte unter VBA gespeichert werden. Dieser Artikel beschreibt alle Arten von VALUE-Funktionen in VBA, z. B. wie der Wert in Zellen gespeichert wird, wie der Wert festgelegt wird, wie der Wert eingefügt wird und vieles mehr.

Wie verwende ich die Excel VBA-Wertfunktion?

Wir werden anhand einiger Beispiele in Excel lernen, wie die VBA-Wertfunktion verwendet wird.

Sie können diese VBA-Wert-Excel-Vorlage hier herunterladen - VBA-Wert-Excel-Vorlage

Beispiel # 1 - Zellenwert mit der Range.Value Funktion einstellen

Einstellung des Zellenwertes über Range. Die Wertefunktion besteht grob aus zwei wichtigen Schritten:

  • Einstellen des Bereichs, in dem der Wert gespeichert werden soll.
  • Zuweisen eines Werts zum eingestellten Bereich.

Führen Sie die folgenden Schritte aus, um den Wert in Excel VBA festzulegen:

Schritt 1: Fügen Sie ein neues Modul unter Visual Basic Editor (VBE) ein.

Schritt 2: Definieren Sie eine neue Subprozedur unter dem eingefügten Modul, damit ein Makro darin gespeichert werden kann.

Code:

 Sub VBA_Value_Ex1 () End Sub 

Schritt 3: Definieren Sie eine neue Variable als Bereich, mit dem Sie einen Bereich definieren können, in dem Sie den Wert speichern möchten.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range End Sub 

Schritt 4: Ordnen Sie mit Hilfe der Funktion VBA RANGE die Zellen im Bereich einer Variablen zu, die mit Hilfe des Zuweisungsoperators definiert wurde.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") End Sub 

Schritt 5: Verwenden Sie nun die Range.Value-Eigenschaft, um dem definierten Bereich einen Wert zuzuweisen. Geben Sie den Variablennamen "setValue_Var" ein, unter dem der Bereich definiert ist.

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var End Sub 

Schritt 6: Fügen Sie nach der Variablen einen Punkt (.) Ein, um die Liste der für diese definierte Bereichsvariable verfügbaren Funktionen von IntelliSense auswählen zu können.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var. End Sub 

Schritt 7: Ziehen Sie durch die Liste und wählen Sie die Funktion „Wert“, um den Wert unter dieser Bereichsvariablen zu speichern.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value End Sub 

Schritt 8: Weisen Sie diesem Bereich mit dem Zuweisungsoperator den Wert "Willkommen in der Welt von VBA!" Zu.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value = "Willkommen in der Welt von VBA!" End Sub 

Schritt 9: Wir sind mit dem Codierungsteil fertig. Führen Sie diesen Code aus, indem Sie F5 oder die Schaltfläche Ausführen unter VBE drücken und die Ausgabe anzeigen.

Sie können den Wert auch einem Zellbereich zuweisen. Alles, was Sie tun müssen, ist, während Sie den Bereich für die Ausgabe festlegen, ein eindimensionales Array anstelle einer einzelnen Zellreferenz anzugeben.

Schritt 10: Ändern Sie im gleichen Code wie oben den Bereich von „A1“ zu „A1: A5“.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1: A5") setValue_Var.Value = "Willkommen in der Welt von VBA!" End Sub 

Schritt 11: Drücken Sie die Taste F5 oder Run und sehen Sie die Ausgabe.

Beispiel 2 - Festlegen des Zellenwerts mithilfe der VBA-Zelleneigenschaft

Dies ist eine weitere Methode zum Festlegen des Zellenwerts unter VBA. Im Gegensatz zur RANGE-Funktion benötigen Zellen diese nicht einmal. Wertoperator, um den Wert für die bestimmte (n) Zelle (n) festlegen zu können.

Führen Sie die folgenden Schritte aus, um den Zellenwert in Excel VBA festzulegen:

Schritt 1: Fügen Sie unter VBE ein neues Modul ein, in das Sie Ihren neuen Code schreiben können.

Schritt 2: Fügen Sie unter Modul eingefügt eine neue Unterprozedur hinzu, in der Sie Ihren Makrocode speichern können.

Code:

 Sub VBA_Value_Ex2 () End Sub 

Schritt 3: Beginnen Sie mit der Eingabe von thisWorkbook.Worksheet, um auf das Blatt "Setting_Cell_Value_2" zuzugreifen.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.worksheets End Sub 

Schritt 4: Erwähnen Sie den Blattnamen in doppelten Anführungszeichen in Klammern.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2") End Sub 

Schritt 5 : Verwenden Sie die Eigenschaft .Cells, um den Zellbereich aus der angegebenen Excel-Tabelle festzulegen.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) End Sub 

Das erste Argument der Cells-Eigenschaft repräsentiert die Zeilen und das zweite Argument repräsentiert die Spalte. Daher bedeutet Zellen (1, 1) die Zelle, die der ersten Zeile und der ersten Spalte des Blattes "Setting_Cell_Value_2" zugeordnet ist.

Schritt 6: Weisen Sie nun mit Hilfe des Zuweisungsoperators diesem Zellensatz einen Wert zu.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) = "VBA ist flexibel." End Sub 

Schauen Sie, dass wir keine .Value-Funktion benötigen, die wir verwenden müssen, wenn wir den Wert mit der Range-Funktion einstellen. Die Cells-Methode verfügt nicht über solche IntelliSense-Optionen.

Schritt 7: Drücken Sie die Taste F5 oder Run, um diesen Code auszuführen und die Ausgabe anzuzeigen. Sie sehen eine Ausgabe wie in der Abbildung unten gezeigt.

Beispiel # 3 - Holen Sie sich den Zellenwert in VBA

Bisher haben wir in zwei Beispielen gesehen, wie Werte für eine Zelle oder einen Zellbereich festgelegt werden. Angenommen, ein Fall ist genau umgekehrt, wir müssen den Wert ermitteln, der einer bestimmten Zelle eines Excel-Arbeitsblatts zugewiesen ist. Wie können wir das bekommen? Lassen Sie uns eine Schritt-für-Schritt-Anleitung durchgehen.

Angenommen, ich habe einen Wert zugewiesen, wie im folgenden Screenshot unter der ersten Zelle von Spalte A im Blatt "Getting_Cell_Value" gezeigt.

Führen Sie die folgenden Schritte aus, um den Zellenwert in Excel VBA abzurufen:

Schritt 1: Fügen Sie ein neues Modul unter VBE ein.

Schritt 2: Fügen Sie eine Unterprozedur hinzu, damit ein Makro als Code gespeichert werden kann.

Code:

 Sub VBA_Value_Ex3 () End Sub 

Schritt 3: Definieren Sie eine neue Variable namens Get_Value als Variante mit der Funktion VBA Dim.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant End Sub 

Jetzt müssen Sie der oben definierten Variablen den in Zelle A1 vorhandenen Wert zuweisen.

Schritt 4: Geben Sie "Get_Value = ThisWorkbook.Worksheets" ein. Auf diese Weise kann der VBA-Compiler auf das Excel-Sheet zugreifen, in dem Ihr Wert gespeichert ist.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets End Sub 

Schritt 5: Erwähnen Sie den Arbeitsblattnamen in Klammern mit Anführungszeichen, in denen der Wert gespeichert ist.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value") End Sub 

Schritt 6: Verwenden Sie nun die Punkt (.) Range-Methode, um die genaue Zelle anzugeben, in der der Wert unter dem Blatt "Getting_Cell_Value" gespeichert ist.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1") End Sub 

Schritt 7: Verwenden Sie abschließend die dot (.) Value-Methode, damit der Compiler auf den tatsächlichen Wert in Zelle A1 zugreifen kann.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Value End Sub 

Schritt 8: Wie bereits erwähnt, müssen wir den Wert in Zelle A1 speichern. Verwenden Sie dazu MsgBox, um den Wert der Variablen Get_Value anzuzeigen (die bereits auf den in Zelle A1 eingegebenen Wert zugegriffen haben).

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Value MsgBox Get_Value End Sub 

Schritt 9: Drücken Sie die Taste F5 oder Ausführen, um diesen Code auszuführen. Der Wert wird in Zelle A1 unter dem Meldungsfeld angezeigt.

Sehen Sie, dies war der Wert, den wir in Zelle A1 des Blattes "Getting_Cell_Value" erwähnt haben. Richtig?

Beispiel # 4 - Können wir mehrere Zellwerte gleichzeitig erhalten?

Nehmen wir an, ich habe Werte in drei verschiedenen Zellen A1, A2, A3 gespeichert, wie im folgenden Screenshot gezeigt:

Lassen Sie sich nicht verwirren, wenn Sie den Text in den Spalten A bis E sehen. Es handelt sich nur um ein sichtbares Layout (da ich die Zellen zusammengeführt habe), und der tatsächliche Wert wird nur in den Zellen A1, A2, A3 gespeichert.

Führen Sie die folgenden Schritte aus, um den Excel VBA-Wert zu verwenden:

Schritt 1: Definieren Sie in Ihrem VBA-Modul eine Variable als Variante unter einer neuen Unterprozedur.

 Code: Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant End Sub 

Schritt 2: Verwenden Sie die Range.Value-Methode, um den Wert der Zellen A1: A3 abzurufen und einer neuen Variablen zuzuweisen, die im vorherigen Schritt definiert wurde.

Code:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Value End Sub 

Schritt 3: Verwenden Sie schließlich die MsgBox-Funktion, um die in Zelle A1: A3 gespeicherten Werte anzuzeigen.

Code:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Value MsgBox Get_Value_2 End Sub 

Schritt 4: Drücken Sie die Taste F5 oder Run und sehen Sie sich die Ausgabe für diesen Code an.

Es wird ein Laufzeitfehler "13" angezeigt: Typenkonflikt. Der Grund für diesen Fehler ist, dass wir eine einzelne Variable definieren und ihr Werte eines eindimensionalen Arrays (mit drei Zeilen) zuweisen. Was logischerweise nicht möglich ist.

Dies ist aus diesem Artikel. Lassen Sie uns die Dinge mit einigen Punkten abschließen, an die wir uns erinnern müssen.

Dinge, an die man sich erinnern sollte

Bei Verwendung der VBA-CELLS-Methode können nicht mehrere Zellenwerte festgelegt werden, da Zeilen und Spalten als Argumente verwendet werden. Sie können nur die Zeilen- und Spaltennummer angeben.

Sie können auch keine Werte erhalten, die in mehreren Zellen in einem einzelnen Meldungsfeld gespeichert sind. Wenn Sie den Wertebereich abrufen müssen, müssen Sie die separaten Get-Argumente für jeden Wert schreiben.

Empfohlene Artikel

Dies war ein Leitfaden für VBA Value. Hier haben wir die Verwendung von Excel VBA Value Function zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Vollständige Anleitung zu VBA On Error
  2. Wie verwende ich das VBA-Zahlenformat?
  3. VBA VLOOKUP Funktion mit Beispielen
  4. Erstellen einer VBA-Funktion in Excel
  5. Wie benutze ich die VBA-Val-Funktion?