Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Excel loop ohne VBA

Excel loop ohne VBA
26.08.2014 12:06:32
Matz
Liebe Experten,
ich muss eine Formel kreieren, die eine Information(Primärschlüssel) unter Bedingungen (Feasibilityliste Spalte S&U) aus einem Arbeitsblatt, in ein neues Arbeitsblatt überträgt.
Die Zielzellen für den Informationsübertrag sind in Spalte A in der Tabelle "Studienliste". Die aktuelle Formel in dieser Spalte beschreibt die Bedingung, die für den Übertrag der Zellinhalte gilt...
=WENN(UND(Feasilibiltyliste!S3="Ja";Feasilibiltyliste!U3="Ja");Feasilibiltyliste!B3;"")
Die Formel funktioniert einwandfrei, allerdings werden Leerfelder eingefügt, wenn nicht beide Bedingungen erfüllt sind. Diese sollen weg.
Der Sonst_Wert sollte demensprechend nicht " " heißen, sondern "dann prüfe den nächsten Wert der Spalte, solange bis du eine ID findest bei der beide Bedingung (U3 & S3) erfüllt sind".
In Foren habe ich gelesen, dass dies Prinzipiell mit der INDEX() Formel möglich ist. Ich habe es allerdings nicht geschafft die WENN(UND( Bedingung in die INDEX Formel zu integrieren. Kann da jemand weiterhelfen? Wenn möglich ohne VBA.
Fettes Merci schonmal, Gruß Matz

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel loop ohne VBA
26.08.2014 12:24:09
Rudi
Hallo,
Schema:
ABCDE
2janeina d
3janeinb f
4neinjac g
5jajad  
6neinneine  
7jajaf  
8jajag  

ZelleFormel
E2{=WENNFEHLER(INDEX($C$2:$C$8;KKLEINSTE(WENN(($A$2:$A$8="ja")*($B$2:$B$8="ja");ZEILE($1:$7);"");ZEILE(A1)));"")}
Achtung, Matrixformel!
Die geschweiften Klammern{} nicht eingeben,
sondern die Zelle mit
Shift + Strg + Enter
verlassen statt Enter alleine.

Gruß
Rudi

Anzeige
oder ohne Matrixformel, mit Hilfsspalte
26.08.2014 12:42:31
Klaus
Hi Matz,
alternativ zu Rudis Formel eine Lösung mit Hilfsspalte, die auf langen Listen performanter sein könnte.
In Rudi's Schema in D2 (die Hilfsspalte):
=WENN(UND(A2="ja";B2="ja");ZEILE(A1);"")
und nach unten kopieren. Die Liste ohne Wiederholung dann ab E2:
=WENNFEHLER(INDEX(C:C;VERGLEICH(KKLEINSTE(D:D;ZEILE(A1));D:D;));"")
und ebenso nach unten kopieren.
Grüße,
Klaus M.vdT.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Excel Schleifen ohne VBA: So funktioniert's


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Stelle sicher, dass deine Daten in einer strukturierten Tabelle vorliegen. Zum Beispiel in einer Tabelle "Feasibilityliste" mit den Spalten S und U.

  2. Formel eingeben: Verwende die folgende Formel in der Zelle A2 der Tabelle "Studienliste":

    =WENN(UND(Feasibilityliste!S2="Ja";Feasibilityliste!U2="Ja");Feasibilityliste!B2;"")

    Diese Formel prüft, ob beide Bedingungen erfüllt sind und gibt den entsprechenden Wert zurück.

  3. Leerwerte vermeiden: Um leerer Zellen in der Zielspalte zu vermeiden, kannst du die INDEX()- und KKLEINSTE()-Formel nutzen, wie in der Formel von Rudi:

    {=WENNFEHLER(INDEX(Feasibilityliste!C:C;KKLEINSTE(WENN((Feasibilityliste!S$2:S$8="Ja")*(Feasibilityliste!U$2:U$8="Ja");ZEILE(Feasibilityliste!S$2:S$8));ZEILE(A1));"")}

    Vergiss nicht, die Formel als Matrixformel einzugeben (Shift + Strg + Enter).

  4. Herunterziehen: Kopiere die Formel nach unten, um die gesamte Liste zu durchsuchen.


Häufige Fehler und Lösungen

  • Fehler: Leerwerte werden angezeigt: Stelle sicher, dass du die INDEX- und KKLEINSTE-Formel korrekt verwendest. Manchmal kann es helfen, die Formel erneut als Matrixformel einzugeben.

  • Fehler: Die Formel gibt nur Fehler zurück: Überprüfe, ob die Zellreferenzen korrekt sind und ob die Bedingungen in der WENN()-Funktion richtig eingegeben wurden.


Alternative Methoden

Eine weitere Möglichkeit, eine Excel Schleife ohne VBA zu erstellen, ist die Verwendung von Hilfsspalten. Hier ist eine einfache Methode:

  1. Hilfsspalte erstellen: In einer neuen Spalte (z.B. D2) kannst du folgende Formel verwenden:

    =WENN(UND(A2="ja";B2="ja");ZEILE(A1); "")

    Diese Formel gibt die Zeilennummer zurück, wenn beide Bedingungen erfüllt sind.

  2. Werte ohne Wiederholung: Um die Werte ohne Wiederholung zu erhalten, kannst du in E2 folgende Formel verwenden:

    =WENNFEHLER(INDEX(C:C;VERGLEICH(KKLEINSTE(D:D;ZEILE(A1));D:D;0));"")

    Auch hier kopierst du die Formel nach unten.


Praktische Beispiele

Angenommen, du hast folgende Daten in der "Feasibilityliste":

A B C
Ja Ja Wert1
Ja Nein Wert2
Nein Ja Wert3
Ja Ja Wert4

Wenn du die oben genannten Formeln anwendest, erhältst du in der "Studienliste" nur die Werte, wo beide Bedingungen erfüllt sind, ohne Leerzeilen.


Tipps für Profis

  • Verwende Named Ranges: Dies kann deine Formeln leserlicher und leichter zu verwalten machen.

  • Kombiniere Funktionen: Du kannst die WENN()-Funktion auch mit anderen Funktionen wie SVERWEIS() oder FILTER() kombinieren, um noch flexiblere Lösungen zu finden.

  • Optimierung von großen Datenmengen: Bei sehr großen Datenmengen kann es sinnvoll sein, die Hilfsspalten zu verwenden, um die Berechnungen zu optimieren.


FAQ: Häufige Fragen

1. Kann ich die Schleife auch in älteren Excel-Versionen verwenden?
Ja, die oben genannten Formeln funktionieren in Excel 2010 und später.

2. Was kann ich tun, wenn die Formel nicht funktioniert?
Überprüfe, ob die Zellreferenzen korrekt sind und ob du die Formel als Matrixformel eingegeben hast, falls erforderlich.

3. Gibt es eine Möglichkeit, die Schleife zu automatisieren?
Ohne VBA sind die Möglichkeiten begrenzt, aber du kannst die Formeln dynamisch anpassen, um verschiedene Bedingungen zu berücksichtigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige