ich bin gerade dabei einen Code zu schreiben, nur fehlt mir der VBA-Code für die "aktuelle Zeile". Immer die Zeile, die gerade angeklickt wird, soll in einen bestimmten Reiter übertragen werden. Kann mir jemand den Code sagen?
Danke
Nik
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox ActiveCell.Address
End Sub
Deshalb schreibt man besserPrivate Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Address
End Sub
Wenn man allerdings per VBA einer Zelle einen Inhalt gibt:
Cells(3, 3) = "Hallo"
Um die aktuelle Zeile in Excel mit VBA zu ermitteln, kannst du den folgenden Code verwenden. Dieser Code gibt die Zeilennummer der aktuell aktiven Zelle zurück:
Sub AktuelleZeileErmitteln()
Dim aktuelleZeile As Long
aktuelleZeile = ActiveCell.Row
MsgBox "Die aktuelle Zeile ist: " & aktuelleZeile
End Sub
ALT + F11
, um den VBA-Editor zu öffnen.Einfügen
> Modul
, um ein neues Modul zu erstellen.Entwicklertools
> Makros
aus und wähle AktuelleZeileErmitteln
.Problem: Der Code gibt nicht die erwartete Zeilennummer zurück.
ActiveCell.Row
die Zeilennummer der aktiven Zelle zurück.Problem: Die Fehlermeldung "Objektvariable nicht gesetzt".
Wenn du nicht mit VBA arbeiten möchtest, kannst du die aktuelle Zeilennummer auch einfach mit einer Formel ermitteln:
=ZEILE()
Diese Formel gibt die Zeilennummer der Zelle zurück, in der sie eingegeben wurde. Du kannst sie in jeder Zelle verwenden, um die aktuelle Zeilennummer anzuzeigen.
Hier sind einige praktische Anwendungen des VBA-Codes:
Sub KopiereAktiveZeile()
Dim aktuelleZeile As Long
aktuelleZeile = ActiveCell.Row
Rows(aktuelleZeile).Copy Destination:=Sheets("Zielblatt").Rows(1)
End Sub
Sub NotizZurAktivenZeile()
Dim aktuelleZeile As Long
aktuelleZeile = ActiveCell.Row
Cells(aktuelleZeile, 2).Value = "Notiz hinzugefügt"
MsgBox "Notiz zur Zeile " & aktuelleZeile & " hinzugefügt."
End Sub
Target
anstelle von ActiveCell
, um Probleme mit Änderungen zu vermeiden, insbesondere bei Worksheet_Change
-Ereignissen. Public
-Variable in einem Modul.Selection
-Eigenschaft, um mehrere Zeilen auf einmal zu verarbeiten.1. Wie kann ich die aktuelle Zeile in einer anderen Excel-Datei verwenden? Du kannst den gleichen VBA-Code verwenden, solange du die Datei mit dem Makro geöffnet hast.
2. Was passiert, wenn ich mehrere Zellen auswähle?
Der Code gibt die Zeilennummer der zuletzt aktiven Zelle zurück. Wenn du die erste Zeile der Auswahl benötigst, verwende Selection.Rows(1).Row
.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen