Note: The other languages of the website are Google-translated. Back to English

Wie finde und erhalte ich den Wert der ersten sichtbaren Zelle nach dem Filtern in Excel?

In einigen Fällen müssen Sie möglicherweise den Wert der ersten sichtbaren Zelle in einer gefilterten Liste abrufen. Wie erreicht man das? Dieser Artikel zeigt Ihnen Methoden zur Lösung.

Suchen und ermitteln Sie den Wert der ersten sichtbaren Zelle nach dem Filtern mit der Array-Formel
Suchen und Abrufen des Werts der ersten sichtbaren Zelle nach dem Filtern mit VBA


Suchen und ermitteln Sie den Wert der ersten sichtbaren Zelle nach dem Filtern mit der Array-Formel

Sie können die folgende Arrayformel anwenden, um den Wert der ersten sichtbaren Zelle in einer gefilterten Liste abzurufen. Bitte gehen Sie wie folgt vor.

1. Wählen Sie eine leere Zelle aus, um den ersten sichtbaren Wert zu platzieren, geben Sie die folgende Formel ein und drücken Sie die Taste Ctrl + Verschiebung + Weiter Schlüssel gleichzeitig.

=INDEX(C2:C19,MIN(IF(SUBTOTAL(3,OFFSET(C2,ROW(C2:C19)-ROW(C2),0)),ROW(C2:C19)-ROW(C2)+1)))

Hinweis: In der Formel ist C2: C19 die gefilterte Liste, für die Sie den ersten sichtbaren Zellenwert zurückgeben möchten. C2 ist die erste Zelle der Liste. Sie können sie nach Bedarf ändern.

Anschließend können Sie den Wert der ersten sichtbaren Zelle in der gefilterten Liste sehen, die in der ausgewählten Zelle ausgefüllt ist (siehe Abbildung oben).


Suchen und Abrufen des Werts der ersten sichtbaren Zelle nach dem Filtern mit VBA

Neben der Verwendung der obigen Array-Formel, um den Wert der ersten sichtbaren Zelle in einer gefilterten Liste abzurufen, können Sie das folgende VBA-Skript ausführen, um schnell die erste sichtbare Zelle einer gefilterten Liste zurückzugeben. Bitte gehen Sie wie folgt vor.

1. Wählen Sie eine leere Zelle wie E8 aus, um den ersten sichtbaren Zellenwert einer gefilterten Liste zu platzieren.

2. Drücken Sie Andere + F11 Tasten gleichzeitig zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

3. In dem Microsoft Visual Basic für Applikationen Klicken Sie im Fenster Insert > Modul. Kopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Modulfenster ein.

VBA-Code: Suchen und Abrufen des Werts der ersten sichtbaren Zelle nach dem Filtern in Excel

Sub FirstVisibleCell()
   With Worksheets("Sheet1").AutoFilter.Range
       ActiveCell.Value2 = Range("C" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(1).Row).Value2
    End With
End Sub

Hinweis: Im Code ist Sheet1 der Blattname, der die gefilterte Liste enthält. "C" ist der Spaltenname, von dem Sie den ersten sichtbaren Wert erhalten möchten. Sie können sie nach Bedarf ändern.

3. Drücken Sie die Taste F5 Wenn Sie den Code ausführen, um den Code auszuführen, wird die erste sichtbare Zelle der gefilterten Liste, die sich in Spalte C befindet, sofort in Zelle E8 eingefügt.


Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Kommentare (17)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wie finde und erhalte ich den Wert von zehn (10) ersten sichtbaren Zellen nach der Zwischensummenfilterung in Excel?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,


Kommt es vor, dass Saber oder Celula-Nummer heute da ist, um zu realisieren oder automatisch zu filtern, ohne VBA via Loop?
Por exemplo, ao filtrar o valor 1, retornou as linhas 2, 3 e 4. No próximo loop filtro o valor 2 e retorna as linhas 19, 20, 22.
Como faço para que eu realizar esse filtro eu pegue exatamente o valor da linha atual da linha do filtro e não o valor da primeira linha da planilha?
Danke.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ausgezeichnetes Modul in VBA, hat perfekt funktioniert. Ich weiß das zu schätzen! Vielen Dank für diesen Beitrag !!!!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Kann jemand erklären, wie diese Formel tatsächlich funktioniert?

=INDEX(C2:C19,MIN(IF(SUBTOTAL(3,OFFSET(C2,ROW(C2:C19)-ROW(C2),0)),ROW(C2:C19)-ROW(C2)+1)))
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich erhalte immer einen Laufzeitfehler '91' Objektvariable oder With-Blockvariable nicht gesetzt. Mein Arbeitsblatt ist Sheet1 mit dem Titel AllBrands. Das ist meine Formel:

Sub FirstVisibleCell()
Mit Worksheets("ALLBRANDS").AutoFilter.Range
ActiveCell.Value2 = Range("H" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(1).Row).Value2
Ende mit

End Sub

Jede Hilfe wird geschätzt!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Bubi,
Der Code funktioniert in meinem Fall gut. Welche Excel-Version verwendest du?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Leider - weder die Formel - die mir einen #VALUE-Fehler gibt, noch die VBA funktioniert für mich und gibt mir einen Laufzeitfehler '1004'
Schade, da ich Office 2019 habe und erwartet hatte, dass eine dieser Funktionen beim Filtern bestimmter Zellen funktioniert ... :-(
Dieser Kommentar wurde vom Moderator auf der Website minimiert
‌wunderbar🌺 Tausend Dank🙏
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Tausend Dank🙏🌺
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Es klappt. Vielen Dank...
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Diese Formel funktioniert, aber beachten Sie, dass bei leeren Zellen die Formel fehlerhaft funktionieren und den ersten Wert in der gesamten Tabelle auswählen kann, nicht nur in den gefilterten Ergebnissen. Die Problemumgehung, die ich gefunden habe, bestand darin, leere Zellen durch NULL oder ein Leerzeichen zu ersetzen.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Zuerst hatte ich Leerzeichen .... dann waren alle Zellen gefüllt, aber ich hatte immer noch die #VALUE-Antwort. Hoffentlich funktioniert diese Formel auch mit Text ...! Danke trotzdem für den Tipp ;-)
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Für mich funktioniert die obige Antwort einfach nicht so gut. Ich habe eine Arbeitsmappe mit über 23 Zeilen und daran habe ich im Laufe der Jahre gearbeitet, um sie zu optimieren. Meine Lösung kam mir heute Morgen in einem weiteren Funken der Inspiration.
Angenommen, Sie verwenden eine TABELLE, um die gewünschten Daten zu erhalten: Eine Zeile (ich habe sie "Rownmbr" genannt) ist gewidmet: =CELL([@[YOURFIRSTROW]])
Außerhalb der Tabelle machst du irgendwo eine Formel:=INDIRECT(CONCATENATE("A";SUBTOTAL(105;Table1[Rownmbr])))
Sie ersetzen einfach das "A" durch die Stelle, von der Sie die Daten erhalten möchten. Für mich funktioniert das großartig, und es ist keine schwere Formel, die das Dokument weiter verlangsamen wird.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Diese Lösung funktionierte perfekt für mich, da ich einen Tisch benutzte. Die Anweisungen waren schwer zu befolgen, daher wird diese Erklärung hoffentlich etwas klarer sein.
Angenommen, Sie haben eine Excel-Tabelle mit dem Namen „Table_Name“. Erstellen Sie zunächst eine neue Spalte in Ihrer Tabelle und nennen Sie sie "RowNumber". 
Geben Sie in dieser neuen Spalte die Formel "=ROW([@RowNumber])" ein. Dadurch wird die neue Spalte damit gefüllt
Geben Sie in der Zelle, in der Sie den ersten sichtbaren Wert anzeigen möchten, die Formel "=INDIRECT("A"&SUBTOTAL(105,Table_Name[RowNumber]))" ein. Das "A" ist der Buchstabe der Spalte, die den gewünschten Wert enthält zurückgeben.
Die Funktion TEILERGEBNIS(105,...) gibt den Mindestwert aller sichtbaren Zeilen in einem bestimmten Bereich zurück, was im obigen Fall die Zeilennummer der ersten sichtbaren Zeile zurückgibt.
Die Funktion INDIREKT gibt den Wert der Zelle für eine gegebene Zellenadresse zurück. Aus diesem Grund muss der erste Teil der Formel den Spaltenbuchstaben der Spalte enthalten, die Sie anzeigen möchten. Der zweite Teil der Formel gibt die Zeilennummer zurück.


Dieser Kommentar wurde vom Moderator auf der Website minimiert
Können Sie mir helfen, diese Formel in Google Sheet mit arrayformula () zu schreiben?

{=INDEX(C2:C19,MIN(IF(SUBTOTAL(3,OFFSET(C2,ROW(C2:C19)-ROW(C2),0)),ROW(C2:C19)-ROW(C2)+1)))}
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Können Sie im folgenden VBA-Code bitte erklären, was das bedeutet SpecialCells(xlCellTypeVisible)(1) bedeuten? Was ist (1) verwendet für danach SpecialCells(xlCellTypeVisible)?
ActiveCell.Value2 = Range("C" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(1).Row).Value2
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Vielen Dank!
Es sind noch keine Kommentare vorhanden

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL