Ich habe viele Methoden versucht, kann aber immer noch nicht die richtige Zeilennummer erhalten.Die Zeilennummer der ersten gefilterten Zeile kann nicht zurückgegeben werden
Ich habe diese Tabelle, in Zeile 4 (Headers) eingefroren.
(Row) Name Car Fee
5 A 333 1000
6 B 111 2000
7 C 222 3000
8 D 111 4000
9 E 222 5000
10 F 111 6000
machte ich eine Taste, um Return die Zeilennummer von Selection Bereich. Nachdem ich mit Kriterien wie "111" gefiltert habe, zeigt die Tabelle Zeilen 6,8,10.
Der Code funktioniert gut, wenn ich von Zeile 6 zu einer anderen Zeile wähle. Aber es wird Fehler, wenn ich nur Zeile 6 auswähle. Gibt nur Zeile 1 unendlich zurück.
-Code arbeitet für diese fein:
Fehler - unendliche Reihe 1:
Die Schaltfläche VBA-Code:
Private Sub msg_Click()
Dim rng As Range, eaR As Range
Set rng = Selection
For Each eaR In rng.Rows.SpecialCells(xlCellTypeVisible)
MsgBox eaR.Row
Next eaR
End Sub
[gelöst] Und Ein anderes Problem ist der Code r etzt die doppelte Zeilennummer, wenn ich mehr als 2 Zellen in einer Zeile auswähle.
Ex: Wenn ich wie IMG 1 wählen, wird er zurückkehren "6,6,8,8"
Was ich tun kann, so wird es nur zurückkehren "6,8"
Bitte helfen Sie mir. Vielen Dank!!!
** Hinweis: Ich muss Selection-Bereich verwenden, weil ich Dinge mit nur einigen Zeilen in den gefilterten Daten tun werde.
Ihnen sehr danken. Es läuft gut. Obwohl das Problem der doppelten Zeilenwiederholung noch nicht gelöst ist. – Shiruhane
'Set rng = Selection.Columns (1)' –
@TimWilliams Danke für Ihre Hilfe, aber Spalten hinzufügen funktionierte nicht für mich. Es gab nur die erste Zeilennummer zurück, die nächste Zeile wurde nicht angezeigt. Wie auch immer, ich mache einen Workaround-Weg, indem ich die Nummer überprüfe, wenn sie dieselbe wie vorher ist, und dann überspringe. – Shiruhane