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

Forumthread: Prüfung, ob Wert in Zeile vorhanden

Prüfung, ob Wert in Zeile vorhanden
Jan
Hallo allerseits,
nun, ich kämpfe wieder mal mit meinen Excel-Kenntnissen und würde mich über Hilfe freuen. Folgendes Problem:
Auf Tabellenblatt1 in Zelle A2 stehe ein Datum, in Zelle B2 eine Zeilennummer als numerischer Wert (1 bis 100 o.ä.), in C2 möchte ich eine Prüfung (Ergebnis: WAHR oder FALSCH) laufen lassen, ob das Datum in A2 auch in einer bestimmten Zeile in Tabellenblatt2 grundsätzlich existiert. In welcher Zeile auf dem zweiten Tabellenblatt zu suchen ist, bestimmt sich über den Wert in B2.
Ich habe jetzt das vorgehen für nur eine Zeile (Zeile 2 auf Blatt1) beschrieben, möchte dieses aber über viele, viele Zeilen runterkopieren können.
Wie geht das? Ich bekomme es nicht hin und pendele zwischen Index, Vergleich, DB-Funktionen, Adresse und habe mich wohl festgefahren. Kann mir jemand helfen?
Viele Grüße
Jan
Anzeige

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

Betreff
Benutzer
Anzeige
Bereich.Verschieben()
24.10.2010 19:56:15
CitizenX
Hallo Jan,
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABC
214.01.20102FALSCH
315.01.20102WAHR
416.01.20103WAHR
517.01.2010 FALSCH
618.01.2010 FALSCH
719.01.2010 FALSCH
820.01.2010 FALSCH
921.01.2010 FALSCH
1022.01.2010 FALSCH
1123.01.2010 FALSCH
1224.01.2010 FALSCH
1325.01.2010 FALSCH
1426.01.2010 FALSCH
1527.01.2010 FALSCH

ZelleFormel
C2=WENN(ISTFEHLER(VERGLEICH(A2;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B2;);0));FALSCH;WAHR)
C3=WENN(ISTFEHLER(VERGLEICH(A3;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B3;);0));FALSCH;WAHR)
C4=WENN(ISTFEHLER(VERGLEICH(A4;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B4;);0));FALSCH;WAHR)
C5=WENN(ISTFEHLER(VERGLEICH(A5;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B5;);0));FALSCH;WAHR)
C6=WENN(ISTFEHLER(VERGLEICH(A6;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B6;);0));FALSCH;WAHR)
C7=WENN(ISTFEHLER(VERGLEICH(A7;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B7;);0));FALSCH;WAHR)
C8=WENN(ISTFEHLER(VERGLEICH(A8;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B8;);0));FALSCH;WAHR)
C9=WENN(ISTFEHLER(VERGLEICH(A9;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B9;);0));FALSCH;WAHR)
C10=WENN(ISTFEHLER(VERGLEICH(A10;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B10;);0));FALSCH;WAHR)
C11=WENN(ISTFEHLER(VERGLEICH(A11;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B11;);0));FALSCH;WAHR)
C12=WENN(ISTFEHLER(VERGLEICH(A12;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B12;);0));FALSCH;WAHR)
C13=WENN(ISTFEHLER(VERGLEICH(A13;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B13;);0));FALSCH;WAHR)
C14=WENN(ISTFEHLER(VERGLEICH(A14;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B14;);0));FALSCH;WAHR)
C15=WENN(ISTFEHLER(VERGLEICH(A15;BEREICH.VERSCHIEBEN(Tabelle2!A$1;Tabelle1!B15;);0));FALSCH;WAHR)
Diese Tabelle wurde mit Tab2Html (v2.4.0) erstellt. ©Gerd alias Bamberg

Grüße
Steffen
Anzeige
AW: Bereich.Verschieben()
24.10.2010 20:18:36
Jan
Hallo Steffen,
danke, das funktioniert schon ganz gut, "Bereich.Verschieben" hilft also. Das gewünschte Endergebnis erhalte ich aber so noch nicht, weil die Formel nur dann funktioniert, wenn das Suchkriterium aus A2, A3 usw. auf dem anderen Tabellenblatt auch in der Spalte A steht. Mir ging es allerdings darum, dass die gesamte Zeile durchsucht wird, nicht nur die erste Spalte. Wie bekomme ich das hin? Wenn es zu findende Werte in der Suchzeile gibt, dann sind diese nicht zwingend sortiert.
Gruß
Jan
Anzeige
AW: Bereich.Verschieben()
24.10.2010 20:26:05
Josef

Hallo Jan,
so?

Tabelle1

 ABCD
1DatumZeileVorhanden 
214.09.20105WAHR 
316.09.20102FALSCH 
417.09.20102WAHR 

Formeln der Tabelle
ZelleFormel
C2=ISTZAHL(VERGLEICH(A2;BEREICH.VERSCHIEBEN(Tabelle2!$A$1;B2-1;;;SPALTEN($1:$1))))


Tabelle2

 EFGHIJKL
1        
2      17.09.2010 
3        
4        
5   14.09.2010    
6        


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Sepp

Anzeige
AW: Bereich.Verschieben()
24.10.2010 20:56:19
Jan
Aha, so gehts. Dankeschön für die Hilfe. Eine Ergänzung für diejenigen, die sich vielleicht später auf diese Lösung stützen wollen: Deine Formel, Sepp, habe ich noch insofern ergänzt, als dass bei der Funktion "Vergleich" der Vergleichstyp auf "0" gesetzt ist, d.h. es wird eine exakte Übereinstimmung gesucht. Ich hatte mich gewundert, warum Deine Formel teilweise funktioniert, aber teilweise nicht "korrekt" rechnet und auch ein kleineres als das zu suchende Datum als Treffer wertet. Wie gesagt, das liegt am nicht ausdrücklich angegebenen Vergleichstyp, der dann von Excel als "1" angenommen wird. Hier die Formel für C2, wie sie mir im Ergebnis nützt:
=ISTZAHL(VERGLEICH(A2;BEREICH.VERSCHIEBEN(Tabelle2!$A$2;B2-1;;;SPALTEN($1:$1));0))
Schöne Grüße, und danke noch einmal
Jan
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Prüfung, ob Wert in Zeile vorhanden


Schritt-für-Schritt-Anleitung

Um zu prüfen, ob ein Wert in einer bestimmten Zeile auf einem anderen Tabellenblatt vorhanden ist, kannst Du die folgende Formel verwenden. Gehe dabei wie folgt vor:

  1. Öffne Deine Excel-Datei und navigiere zu Tabellenblatt1.

  2. In Zelle A2 gib ein Datum ein und in B2 die Zeilennummer, die Du überprüfen möchtest.

  3. In Zelle C2 gib die folgende Formel ein:

    =WENN(ISTFEHLER(VERGLEICH(A2;BEREICH.VERSCHIEBEN(Tabelle2!A$1;B2-1;;;SPALTEN($1:$1));0));FALSCH;WAHR)
  4. Ziehe die untere rechte Ecke von C2 nach unten, um die Formel für weitere Zeilen zu kopieren. Diese Formel prüft, ob das Datum in A2 auf der angegebenen Zeile in Tabellenblatt2 vorhanden ist.

  5. Die Formel gibt "WAHR" zurück, wenn der Wert vorhanden ist, und "FALSCH", wenn nicht.


Häufige Fehler und Lösungen

  • Fehler: #BEZUG!

    • Lösung: Überprüfe, ob die Zeilennummer in B2 tatsächlich auf eine existierende Zeile in Tabellenblatt2 verweist.
  • Fehler: Keine Übereinstimmung

    • Lösung: Stelle sicher, dass das Datum in A2 exakt mit einem Datum in der Zielzeile übereinstimmt. Verwende die Funktion =TEXT(A2;"TT.MM.JJJJ"), um sicherzustellen, dass das Format übereinstimmt.
  • Formel funktioniert nicht für ganze Zeilen

    • Lösung: Verwende die angepasste Formel, um die gesamte Zeile zu durchsuchen:
    =ISTZAHL(VERGLEICH(A2;BEREICH.VERSCHIEBEN(Tabelle2!$A$2;B2-1;;;SPALTEN($1:$1));0))

Alternative Methoden

  1. SVERWEIS-Funktion: Du kannst auch die SVERWEIS-Funktion verwenden, um nach einem Wert zu suchen. Diese Funktion eignet sich, wenn Du nur eine bestimmte Spalte durchsuchen möchtest.

    =SVERWEIS(A2;Tabelle2!A:B;2;FALSCH)
  2. FILTER-Funktion (ab Excel 365): Mit der FILTER-Funktion kannst Du die Zeilen filtern, die dem Suchkriterium entsprechen.

    =FILTER(Tabelle2!A2:B100;Tabelle2!A2:A100=A2)

Praktische Beispiele

  • Beispiel 1: Du möchtest prüfen, ob das Datum "14.01.2010" in der Zeile 2 von Tabellenblatt2 vorhanden ist. Trage in A2 das Datum ein und in B2 die Zeilennummer "2". Die Formel in C2 gibt "WAHR" zurück, wenn das Datum vorhanden ist.

  • Beispiel 2: Wenn Du in einer Liste von Daten prüfen möchtest, ob diese in einer anderen Liste vorhanden sind, kannst Du die oben genannten Formeln in einem größeren Bereich anwenden.


Tipps für Profis

  • Namen definieren: Definiere Namen für Deine Bereiche, um die Formeln lesbarer zu machen. Zum Beispiel, benenne den Bereich in Tabellenblatt2 als Suchbereich.

  • Datenvalidierung: Verwende Datenvalidierung, um sicherzustellen, dass nur gültige Zeilennummern in B2 eingegeben werden können.

  • Verwendung von Array-Formeln: Für komplexere Abgleiche kannst Du Array-Formeln nutzen, um mehrere Bedingungen zu überprüfen.


FAQ: Häufige Fragen

1. Wie kann ich in einer bestimmten Spalte nach einem Wert suchen? Du kannst die Formel anpassen, um nur eine bestimmte Spalte zu durchsuchen, indem Du den Bereich in der BEREICH.VERSCHIEBEN-Funktion entsprechend anpasst.

2. Funktioniert das auch in älteren Excel-Versionen? Ja, die grundlegenden Funktionen wie WENN, VERGLEICH und ISTFEHLER sind auch in älteren Versionen verfügbar. Achte darauf, dass einige Funktionen wie FILTER nur in neueren Versionen verfügbar sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige