Wie gebe ich mit vba einen wert in eine zelle ein?
Wichtige Anmerkungen
- Die Value-Eigenschaft kann in beide Richtungen verwendet werden (Sie können einen Wert aus einer Zelle lesen und schreiben).
- Sie können mit „Cells“ und „Range Object“ auf eine Zelle verweisen, um einen Zellenwert festzulegen (sowie zum Abrufen und Bearbeiten).
Zellenwert festlegen
Um einen Zellenwert festzulegen, müssen Sie die Eigenschaft „Wert“ verwenden und dann den gewünschten Wert festlegen. Hier habe ich einige Beispiele verwendet, um Ihnen das Verständnis zu erleichtern.
1. Geben Sie einen Wert in eine Zelle ein
Angenommen, Sie müssen in Zelle A1 den Wert „Fertig“ eingeben. In diesem Fall würde der Code etwa wie folgt aussehen:
Range("A1").Value = "Done"
Wie Sie sehen, lege ich zuerst die Adresse der Zelle fest, in der ich den Wert hinzufügen möchte, und dann die Eigenschaft value. Am Ende habe ich den Wert „Fertig“ mit einem Gleichheitszeichen „=“ in doppelten Anführungszeichen zugewiesen.
Sie können auch die Eigenschaft „Cells“ verwenden, genau wie im folgenden Code.
Cells(1, 1).Value = "Done"
Der obige Code bezieht sich auch auf Zelle A1.
Abgesehen davon gibt es noch eine andere Möglichkeit, die Sie nutzen können, indem Sie die Eigenschaft value nicht verwenden und den Wert direkt der Zelle zuweisen.
Cells(1, 1) = "Done"
Es wird jedoch empfohlen, die Value-Eigenschaft zu verwenden, um einen Wert in eine Zelle einzugeben.
Angenommen, Sie möchten eine Zahl in eine Zelle eingeben. In diesem Fall müssen Sie keine doppelten Anführungszeichen verwenden. Sie können den Code wie folgt schreiben.
Range("A1") = 99
Sie können auch DATE und NOW ( VBA-Funktionen ) verwenden, um mithilfe von VBA-Code ein Datum oder einen Zeitstempel in eine Zelle einzugeben.
Range("A1").Value = Date Range("A2").Value = Now
Und wenn Sie einen Wert in die aktive Zelle eingeben möchten, wäre der benötigte Code wie folgt:
ActiveCell.Value = Date
2. Verwendung eines Eingabefelds
Wenn Sie möchten, dass ein Benutzer einen Wert angibt, der in eine Zelle eingegeben werden soll, können Sie ein Eingabefeld verwenden. Angenommen, Sie möchten den Wert in Zelle A1 eingeben, der Code würde so aussehen:
Range("A1").Value = _ InputBox(Prompt:="Type the value you want enter in A1.")
Im obigen Code wird der Wert der Zelle A1 dem vom Eingabefeld zurückgegebenen Wert zugewiesen, der den vom Benutzer eingegebenen Wert zurückgibt.
3. Aus einer anderen Zelle
Sie können den Zellenwert auch mithilfe des Werts einer anderen Zelle festlegen. Angenommen, Sie möchten aus Zelle B1 einen Wert zu Zelle A1 hinzufügen. Der Code wäre:
Range("A1") = Range("B1").Value
Sie können auch auf Zelle B1 verweisen, ohne die Value-Eigenschaft zu verwenden.
Range("A1") = Range("B1")
4. Stellen Sie den Wert in einem gesamten Bereich ein
Stellen Sie sich vor, Sie möchten Werte in mehrere Zellen oder einen Zellbereich statt in eine einzelne Zelle eingeben. In diesem Fall müssen Sie Code wie den folgenden schreiben:
Range("A1:A10").Value = Date Range("B1, B10").Value = Now
In der ersten Codezeile haben Sie einen gesamten Bereich von Zelle A1 bis A10 und in der zweiten Zeile gibt es zwei Zellen B1 und B10.
Zellenwert abrufen
Wie gesagt, Sie können dieselbe Value-Eigenschaft verwenden, um den Wert einer Zelle abzurufen.
1. Ermitteln Sie den Wert der ActiveCell
Angenommen, Sie möchten den Wert der aktiven Zelle abrufen. In diesem Fall müssen Sie den folgenden Code verwenden.
ActiveCell.Value = Range("A1")
Im obigen Code haben Sie die Value-Eigenschaft mit der aktiven Zelle verwendet und diesen Wert dann der Zelle A1 zugewiesen.
2. Einer Variablen zuweisen
Sie können auch einen Wert aus einer Zelle abrufen und ihn dann einer Variablen zuweisen.
Im obigen Code haben Sie nun die Variable „i“, deren Datentyp „ Datum“ ist. In der zweiten Zeile des Codes wird der Variablen der Wert der Zelle A1 zugewiesen.
3. Anzeige in einer MsgBox
Stellen Sie sich nun vor, Sie möchten den Wert der Zelle A1 über ein Meldungsfeld anzeigen. In diesem Fall würde der Code wie folgt aussehen.
MsgBox Range("A1").Value
Im obigen Code übernimmt das Meldungsfeld den Wert aus Zelle A1 und zeigt ihn dem Benutzer an.
Zellenwert ändern
Sie können auch Änderungen an einem Zellenwert vornehmen. Hier habe ich einige Beispiele aufgeführt, die Ihnen helfen können, dies zu verstehen.
1. Fügen Sie einer vorhandenen Nummer eine Nummer hinzu
Nehmen wir an, wenn Sie der Zahl in Zelle A1 eine hinzufügen möchten, können Sie den folgenden Code verwenden.
Range("A1").Value = Range("A1").Value + 1
Der obige Code weist der Zelle A1 einen Wert zu, indem er den Wert der Zelle A1 selbst nimmt und eins hinzufügt. Sie können aber auch VBA IF THEN ELSE verwenden, um eine Bedingung zu schreiben, die sich nur ändert, wenn eine Zahl in der Zelle vorhanden ist .
If IsNumeric(Range("A1").Value) Then Range("A1").Value = Range("A1").Value + 1 End If
2. Löschen Sie das erste Zeichen aus der Zelle
Nun entfernt der folgende Code das erste Zeichen aus dem Zellenwert und weist den Rest des Werts der Zelle zu.
Range("A1").Value = Right(Range("A1").Value, Len(Range("A1").Value) - 1)