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

Forumthread: Im Autofilter zu nächsten Zelle springen

Im Autofilter zu nächsten Zelle springen
Thomas
Hallo,
ich suche nach einer Möglichkeit in einer gefilterten Datei den Wert aus der nächsten Zeile zu übernehmen.
Hat jemand eine Lösung?
Danke
Thomas
Anzeige
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 12:39:09
Mike
Hallo Thomas,
wenn die Zeile A10 sichtbar ist und Du den Wert von A11 willst,
würd ichs mal mit =A11 versuchen.
Gruss
Mike
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 12:44:34
Thomas
Hallo Mike,
dann wäre es ja einfach.
Der nächste Wert steht aber nicht in der nächsten Zeile, da ja ein Filter drüber liegt.
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 13:32:57
Mike
Sorry, Deine Glaskugel leuchtet nicht all zu weit,
vielleicht umschreibst Du es etwas genauer.
Gruss
Mike
Anzeige
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 13:56:23
Thomas
Sorry, wenn ich mich missverständlich ausgedrückt habe.
Ich habe also eine Datei, die über einen Filter "gefiltert" ist. Nun befinde ich mich z.B. in Zelle A1 und möchte den Wert aus der nächsten, sichtbaren Zeile z.B. A13, die nachfolgende sichbare Zelle kann aber auch A25 sein, je nach Filterkriterium.
Hoffe jetzt wird es anschaulicher.
Anzeige
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 14:20:30
Mike
Hallo Thomas,
und was machst Du mit dem Wert aus A13, nur anzeigen?
Filtere mal mit "nicht leere".
Gruss
Mike
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 14:25:49
Thomas
Hi Mike,
den Wert kopiere ich dann, ich brauche das nämlich für eine andere Anweisung.
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 14:21:13
Thomas
Ich habs jetzt mit
SendKeys "{ENTER}", True
überbrückt. Vielleicht gibt es ja noch eine elegantere Lösung.
Anzeige
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 14:27:20
Thomas
Frage bleibt offen
AW: Im Autofilter zu nächsten Zelle springen
25.11.2010 14:55:59
Thomas
Hallo Luschi,
danke für die Arbeit, die du dir gemacht hast. Deine Version gibt aber immer nur die erste gefilterte Zelle wieder. Wenn ich mich aber in dieser befinde, dann brauche ich den Wert der nächsten Zelle.
Danke nochmal.
Thomas
Anzeige
AW: Im Autofilter zu nächsten Zelle springen
26.11.2010 01:45:13
Daniel
Hi
ausgehend von der aktiven Zelle selektiert dieser Code die nächste Sichtbare Zelle und aktivert sie:
ActiveCell.Offset(1, 0).Resize(1000).SpecialCells(xlCellTypeVisible).Cells(1, 1).Activate
man soll im Code zwar nicht aktiveren und selektieren, aber ich hoffe, du siehst wie es funktioniert.
je nach anzahl der Datenmenge muss das Resize ggf angepasst werden.
gruß, Daniel
Anzeige
Funktioniert perfekt
26.11.2010 10:32:38
Thomas
Hallo Daniel,
Funktioniert perfekt - genau so wollte ich es haben.
Danke - an alle!
Thomas
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Im Autofilter zu nächsten Zelle springen


Schritt-für-Schritt-Anleitung

Um in einer gefilterten Excel-Tabelle den Wert aus der nächsten sichtbaren Zelle zu übernehmen, kannst Du die folgende Excel-VBA-Methode verwenden. Diese Methode erfordert, dass Du Kenntnisse im Umgang mit Makros hast.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub NächsteSichtbareZelle()
       Dim NächsteZelle As Range
       Set NächsteZelle = ActiveCell.Offset(1, 0).Resize(1000).SpecialCells(xlCellTypeVisible).Cells(1, 1)
       NächsteZelle.Activate
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Wähle die Zelle aus, von der Du die nächste sichtbare Zelle aktivieren möchtest.

  6. Drücke ALT + F8, wähle NächsteSichtbareZelle und klicke auf Ausführen.


Häufige Fehler und Lösungen

Fehler 1: "Laufzeitfehler 1004: Keine Zellen gefunden."
Lösung: Stelle sicher, dass Du Dich in einer gefilterten Liste befindest und dass es sichtbare Zellen gibt.

Fehler 2: "Makro funktioniert nicht wie erwartet."
Lösung: Überprüfe, ob Du die richtige Zelle ausgewählt hast und ob Filter korrekt gesetzt sind.


Alternative Methoden

Eine alternative Methode ist die Verwendung von Formeln, um den nächsten sichtbaren Wert zu ermitteln. Wenn Du in Zelle A1 bist und den nächsten sichtbaren Wert in Spalte A erhalten möchtest, kannst Du die folgende Array-Formel verwenden:

=INDEX(A:A,AGGREGATE(15,6,ROW(A:A)/(SUBTOTAL(103,OFFSET(A:A,ROW(A:A)-MIN(ROW(A:A)),0,1)),1),1))

Diese Formel nutzt die Funktion AGGREGATE, um den nächsten sichtbaren Wert zu finden, auch wenn ein Autofilter aktiv ist.


Praktische Beispiele

Angenommen, Du hast eine Liste von Verkäufen gefiltert und möchtest den nächsten sichtbaren Verkaufspreis abfragen. Setze den Fokus auf die Zelle mit dem ersten sichtbaren Wert und führe das VBA-Skript aus oder benutze die Array-Formel.

Beispiel-Daten:

A
100
200
(gefiltert)
300
400

Wenn das Filterkriterium auf "größer als 150" gesetzt ist, würde die Formel den Wert 300 zurückgeben, wenn Du in der Zelle mit 200 bist.


Tipps für Profis

  • Wenn Du regelmäßig mit gefilterten Daten arbeitest, erwäge, Deine eigenen Makros zu erstellen, die automatisierte Aufgaben durchführen.
  • Nutze die SUBTOTAL-Funktion, um aggregierte Daten aus gefilterten Bereichen abzurufen.
  • Erstelle benutzerdefinierte Formeln, um spezifische Anforderungen zu erfüllen, indem Du die Möglichkeiten von VBA und Excel kombinierst.

FAQ: Häufige Fragen

1. Kann ich die nächste sichtbare Zelle ohne VBA abrufen?
Ja, Du kannst dies mit der AGGREGATE-Funktion tun, wie im Abschnitt "Alternative Methoden" beschrieben.

2. Funktioniert das auch in Excel für Mac?
Ja, die beschriebenen Methoden funktionieren sowohl in Windows- als auch in Mac-Versionen von Excel, solange VBA unterstützt wird.

3. Was tun, wenn die Formel nicht das erwartete Ergebnis liefert?
Überprüfe, ob die Filter korrekt angewendet sind und ob es sichtbare Zellen in dem gewünschten Bereich gibt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige