Wie verwende ich activecell in vba in excel?
In VBA ist die aktive Zelle eine Eigenschaft, die die Zelle darstellt, die gerade aktiv ist. Wenn Sie eine Zelle auswählen oder zu einer Zelle navigieren und diese Zelle von diesem grünen Feld abgedeckt wird, können Sie die ACTIVECELL-Eigenschaft verwenden, um im VBA-Code auf diese Zelle zu verweisen. Es gibt Eigenschaften und Methoden, die damit einhergehen.
Aktive Zelleneigenschaft verwenden
- Geben Sie das Schlüsselwort „ActiveCell“ ein.
- Geben Sie einen Punkt (.) ein, um die Eigenschaften und Methoden aus der Liste abzurufen.
- Wählen Sie die Eigenschaft oder Methode aus, die Sie verwenden möchten.
- Führen Sie den Code aus, um die Aktivität für die aktive Zelle auszuführen.
Wichtige Punkte
- Wenn Sie die Eigenschaft „Aktive Zelle“ verwenden, bezieht sich VBA auf die aktive Zelle im aktiven Blatt der aktiven Arbeitsmappe , unabhängig davon, wie viele Arbeitsmappen gerade geöffnet sind.
- ActiveCell ist letztlich eine Zelle mit allen Eigenschaften und Methoden einer normalen Zelle.
Aktivieren Sie eine Zelle aus dem ausgewählten Bereich
Um eine Zelle mithilfe von VBA-Code zu aktivieren, können Sie eine „Aktivieren“-Methode und eine „Auswählen“-Methode auf zwei Arten verwenden.
Sub vba_activecell() 'select and entire range Range("A1:A10").Select 'select the cell A3 from the selected range Range("A3").Activate 'clears everything from the active cell ActiveCell.Clear End Sub
Der obige Code wählt zunächst den Bereich A1:A10 aus, aktiviert dann die Zelle A3 daraus und löscht am Ende alles aus der aktiven Zelle, also A3.
Rückgabewert der aktiven Zelle
Der folgende Code gibt den Wert der aktiven Zelle über ein Meldungsfeld zurück.
MsgBox ActiveCell.Value
Oder wenn Sie den Wert der aktiven Zelle abrufen und ihn in eine separate Zelle einfügen möchten.
Range("A1") = ActiveCell.Value
Aktive Zelle auf eine Variable setzen
Sie können die aktive Zelle auch auf die Variable setzen, wie im folgenden Beispiel.
Sub vba_activecell() 'declares the variable as range Dim myCell As Range 'set active cell to the variable Set myCell = ActiveCell 'enter value in the active cell myCell.Value = Done End Sub
Rufen Sie die Zeilen- und Spaltennummer der ActiveCell ab
Bei der aktiven Zelle gibt es eine Zeilen- und Spalteneigenschaft, mit der Sie die Zeilen- und Spaltennummer der aktiven Zelle ermitteln können.
MsgBox ActiveCell.Row MsgBox ActiveCell.Column
Aktive Zellenadresse abrufen
Sie können die Adresseigenschaft verwenden, um die Adresse der aktiven Zelle abzurufen.
MsgBox ActiveCell.Address
Wenn Sie den obigen Code ausführen, wird ein Meldungsfeld mit der Zellenadresse der aktiven Zelle des aktiven Blatts der aktiven Arbeitsmappe angezeigt (wie bereits erwähnt).
Verschieben Sie die aktive Zelle mithilfe des Versatzes
Mit der Offset-Eigenschaft können Sie zu einer Zelle wechseln, die mehrere Zeilen und Spalten von der aktiven Zelle entfernt ist.
ActiveCell.Offset(2, 2).Select
Wählen Sie einen Bereich in der aktiven Zelle aus
Sie können auch einen Bereich aus der aktiven Zelle auswählen.
Range(ActiveCell.Offset(1, 1), ActiveCell.Offset(5, 5)).Select