Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vorletzte Reihe in gefilterter Tabelle

Forumthread: vorletzte Reihe in gefilterter Tabelle

vorletzte Reihe in gefilterter Tabelle
05.10.2003 16:41:58
RainerL
Hallo Forum,
komme selbst nicht weiter. Um in einer Tabelle die letzte Reihe zu finden, benutze ich:

r = ActiveCell.SpecialCells(xlLastCell).Row

msgbox Cells(r,1) zeigt mir den Inhalt der Zelle in Saplt A in der letzten Reihe an.
msgbox Cells(r-1,1) zeigt mir den Inhalt der vorletzten Zelle an.

Wie kann ich den Inhalt einer Zelle der vorletzten Reihe in einer gefilterten Tabelle auslesen?

Danke für Tips, Hiweise, Hilfe

Rainer
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vorletzte Reihe in gefilterter Tabelle
05.10.2003 17:36:55
RainerW
Hallo Namensvetter :-)

so geht es bei mir Excel 9.0:


Sub test()
Dim r
r = ActiveCell.SpecialCells(xlLastCell).Row - 1
MsgBox Range("A" & r) ' Wenn Spalte A sonst anderen Buchstaben
End Sub


Gruß Rainer
AW: vorletzte Reihe in gefilterter Tabelle
05.10.2003 17:52:29
Holger Levetzow
das wird so nicht klappen! In r ist dann die zeile davor, nicht die Zeile des gefilterten Wertes davor (die wird wohl gesucht). Außerdem gibt die message den Wert der Zelle zurück.
Versuche mal:
1. Beispiel: nur die Zeilenummer des nächsten Wertes

Sub test()
r = ActiveCell.SpecialCells(xlLastCell).Row
'Adresse und Wert merken
adresse = Cells(r, ActiveCell.Column).Address
wert = Range(adresse).Value
'Inhalt löschen
Range(adresse).ClearContents
'neue letzte Zelle finden
r = ActiveCell.End(xlUp).Row
'Zelle wieder beschreiben
Range(adresse) = wert
End Sub

2. Beispiel: die Zeilennummern aller Werte (letzter wird z.B. 1 sein, wenn Spaltenüberschrift in Zeile 1 steht)

Sub alle()
Range("A65536").Select
Cells(ActiveCell.End(xlUp).Row, ActiveCell.Column).Select
r = ActiveCell.Row '1. Zelle mit Wert
While r > 1
'Adresse und Wert merken
adresse = ActiveCell.Address
wert = ActiveCell.Value
'Inhalt löschen
ActiveCell.ClearContents
'neue letzte Zelle finden
Cells(ActiveCell.End(xlUp).Row, ActiveCell.Column).Select
'Zelle wieder beschreiben
Range(adresse) = wert
r = ActiveCell.Row 'nächste Zelle mit Wert
Wend
End Sub

mfg Holger
Anzeige
Vorletzte Reihe in gefilterter Tabelle - Formel
05.10.2003 22:32:16
Boris
Hi Rainer,

ich biete dir noch ne Formelvariante - bezogen auf Spalte A:

{=KGRÖSSTE(WENN(TEILERGEBNIS(3;INDIREKT("A"&ZEILE(1:100)));ZEILE(1:100));2)}

Array-Formel - die {geschweiften Klammern} nicht mit eingeben, sondern Formeleingabe mit Strg-Shift-Enter abschließen. Das erzeugt sie.

Mit (auch Array-Formel)

{=INDEX(A:A;KGRÖSSTE(WENN(TEILERGEBNIS(3;INDIREKT("A"&ZEILE(1:100)));ZEILE(1:100));2))}

erhälst du den zugehörigen Eintrag.

Grüße Boris
Anzeige
Danke!
06.10.2003 04:09:33
RainerL
Danke für die Hilfe

Die Lösung von Holger Levetow funktioniert gut.
Die Lösung von Boris habe ich nicht probiert.

Rainer
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige