Seite 1 von 2
SVERWEIS mit "multiplen" ergebnissen
Verfasst: Di, 16.01.2007 16:57
von roli
Hallo,
derzeit nutze ich die Funktion SVERWEIS, um Einträge aus einer zweiten Tabelle auf die erste zu "referenzieren", halt so wie es sein soll. Klappt auch alles zufriedenstellend soweit.
Leider ist jetzt zum erstenmal der Fall eingetroffen, das die zweite Tabelle zu meinen gewünschten Suchkriterium einen zweiten Eintrag enthaelt. Als Ergebnis liefert SVERWEIS mir nur den ersten Eintrag, was gemaess Doku ja auch das richtige Verhalten ist.
Die Suchfunktion unterstützt reguläre Ausdrücke. Sie können Sie beispielsweise mit "all.*" nach dem ersten Auftreten von "all" gefolgt von beliebigen anderen Zeichen suchen.
Leider ist das nicht das richtige Verhalten fuer meine Tabelle.
Kann ich SVERWEIS irgendwie "aufbohren", eine andere Funktion nutzen, ... damit ich alle Eintraege der zweiten Tabelle in die erste referenziert bekomme.
Verfasst: Di, 16.01.2007 20:51
von FranzX
Hallo Roland,
SVERWEIS "aufbohren" kann auch ich nicht,
aber du könntest die Ursprungstabelle abfragen wie oft ein Eintrag vorkommt und dann mit Hilfe einer WENN()-Formel und SVERWEIS() die mehrfach gefundenen Einträge in einer eigenen Spalte anzeigen lassen.
Mehrfach vorhandene Beträge findest du z.B. mit der Formel:
=ZÄHLENWENN($C$5:$C24;$C5)
wenn sich die Suchkriterien in der Spalte C befinden. Einfach in eine Zelle schreiben und nach unten ziehen.
Vielleicht hilfts dir weiter
Viele Grüße
FranzX
-------------------------------------
TIPP: OpenOffice.org Calc - Formeln und Funktionen
Verfasst: Di, 16.01.2007 22:11
von Karolus
Hallo
Die Funktion SVERWEIS ist nicht dafür konzipiert mehrere Rückgaben mit gleichem Suchkriteriumzu liefern.
Vermutlich ist für diese Aufgabe ->Daten ->Datenpilot besser geeignet.(Quellbereich vorher markieren)
Im Datenpilot-dialog ziehst du nacheinander erste Spalte, 2. Spalte, ? ins Feld 'Zeilenfelder',
unter 'Zusätze' kannst du den Ausgabebereich einstellen.
In der Tabelle werden dann bei Doppelklick auf ein Kriterium alle verschiedenen Einträge gelistet.
Gruß Karo
Verfasst: Mi, 17.01.2007 07:42
von Eia
FranzX hat geschrieben:
aber du könntest die Ursprungstabelle abfragen wie oft ein Eintrag vorkommt und dann mit Hilfe einer WENN()-Formel und SVERWEIS() die mehrfach gefundenen Einträge in einer eigenen Spalte anzeigen lassen.
Wie müsste man die SVERWEIS-Funktion denn da aufsetzen, dass sie mehrere Ergebnisse liefert?
Müsste man irgendwie mit ZEILE() die Position des ersten Eintrags herausfinden und davon ausgehend dann eine zweiten SVERWEIS-Funktion mit angepasstem Bereich? Geht das oder woran hattest Du gedacht?
Verfasst: Mi, 17.01.2007 11:35
von roli
Karolus hat geschrieben:Hallo
Vermutlich ist für diese Aufgabe ->Daten ->Datenpilot besser geeignet.(Quellbereich vorher markieren)
Im Datenpilot-dialog ziehst du nacheinander erste Spalte, 2. Spalte, ? ins Feld 'Zeilenfelder',
unter 'Zusätze' kannst du den Ausgabebereich einstellen.
Mhhh, so wirklich werde ich aus dem Datenpilot nicht schlau wie ich den nutzen soll. Gibt es neben der Onlinehilfe noch Doku im Netz die mir sagen koennte wie der Datenpilot zu nutzen ist?
Danke
Verfasst: Mi, 17.01.2007 13:16
von Karolus
Hallo Roland
Mhhh, so wirklich werde ich aus dem Datenpilot nicht schlau wie ich den nutzen soll.
Gibt es neben der Onlinehilfe noch Doku im Netz die mir sagen koennte wie der Datenpilot
zu nutzen ist?
http://www.ooowiki.de/DatentabellenAuswerten
Dort werden verschiedene Möglichkeiten der Datenaufbereitung mit Beispieldokumenten
erklärt. Vielleicht hilfts dir weiter ?
Evtl. solltest noch mal ausführlichere Details über die Struktur der Quelldaten, und darüber
"was-daraus-werden-soll" hier posten.
Gruß Karo
Verfasst: Do, 18.01.2007 11:56
von roli
Tach,
Karolus hat geschrieben:Evtl. solltest noch mal ausführlichere Details über die Struktur der Quelldaten, und darüber
"was-daraus-werden-soll" hier posten.
ich suche eine Moeglichkeit, um in meinem
Kalender mehr als einen Eintrag an einem Tag darstellen zu können.
Wenn z.B. zwei Geburtstage auf einen Tag fallen, koennte ich sie ja in einen Eintrag in der Geburtstagstabelle schreiben. Das waere nicht schoen, aber eine moegliche Loesung. Ein Problem ist jedoch wenn ein beweglicher Feiertag in einem Jahr mit einen Geburtstag zusammenfaellt, und im naechsten nicht. Da ich nicht jedes Jahr checken moechte, ob zwei Termine zusammenfallen, suche ich halt nach einem Weg dies zu realisieren.
Verfasst: Do, 18.01.2007 12:25
von Eia
Das musst Du anders angehen. Lass die Geburtstage in ihrem eigenen Bereich und hänge die SVERWEIS-Funktion mit & an, z.B.:
=WENN(ODER(A9="";ISTFEHLER(D9));"";SVERWEIS(A9;Feiertage;3;0)&WENN(ISTNV(SVERWEIS(A9;Geburtstage;2;0));"";ZEICHEN(19)&SVERWEIS(A9;Geburtstage;2;0)))
Die ganze Geschichte scheint mir aber relativ kompliziert aufgebaut.
Verfasst: Do, 18.01.2007 16:05
von roli
Hi,
Eia hat geschrieben:Die ganze Geschichte scheint mir aber relativ kompliziert aufgebaut.
Joh, das sehe ich auch so. Da ich aber nicht so fit bin, habe ich mir halt eine Vorlage gesucht, die ich dann (weitestgehend) an das angepasst habe, was ich gerne haette. Dabei handelt man sich halt auch Nachteile ein ...
Eia hat geschrieben:Lass die Geburtstage in ihrem eigenen Bereich und hänge die SVERWEIS-Funktion mit & an, z.B.:
=WENN(ODER(A9="";ISTFEHLER(D9));"";SVERWEIS(A9;Feiertage;3;0)&WENN(ISTNV(SVERWEIS(A9;Geburtstage;2;0));"";ZEICHEN(19)&SVERWEIS(A9;Geburtstage;2;0)))
Wenn ich deine Formel benutze erhalte ich "#NAME?" als Ergebnis.
So was in der Art wie du schreibst hatte ich ursprueglich auch vor. Ich wollte fuer jede meiner vier "Eintragskategorien" einen eignen SVERWEIS aufruf jeweils mit & verknuepfen. Warum auch immer, es klappt nicht. Ich habe/hatte das Gefuehl, das es an der Bereichsangebe liegt. Jedesmal wenn ich da nur einen Tabellenname eintrage geht's nicht. Die Formel die in den Zellen auf dem Kalenderblatt steht funktioniert aber so, daher verstehe ich's einfach nicht.
Weiterhin bleibt auch so das Problem, das es Tage gibt, an denen zwei Menschen Geburtstag haben, und ich diese gerne im Kalender stehen haette. OK, ich koennte sie in eine Zeile der Geburtstagstabelle packen, aber das gefaellt mir eigentlich nicht.
Danke
Verfasst: Do, 18.01.2007 17:25
von Karolus
Hallo
Füg mal im Blatt 'Feiertage' eine neue Spalte D ein, mit folgender Formel

D3)
Code: Alles auswählen
=WENN(ISTNV(SVERWEIS(A3;$A$56:$C$63;3;0));"";ZEICHEN(10)&SVERWEIS(A3;$A$56:$C$63;3;0))
die ziehst du bis D55, In Spalte C3 hängst du '&D3' an und ziehst ebenfalls nach unten.
ebenso unten widerholen wo sich die Formel in C ändert.
Jetzt werden auch Geburtstage eingetragen die auf einen Feiertag fallen.
Gruß Karo
Verfasst: Do, 18.01.2007 17:28
von Eia
roli hat geschrieben:Hi,
Eia hat geschrieben:Die ganze Geschichte scheint mir aber relativ kompliziert aufgebaut.
Joh, das sehe ich auch so. Da ich aber nicht so fit bin, habe ich mir halt eine Vorlage gesucht, die ich dann (weitestgehend) an das angepasst habe, was ich gerne haette.
Das ist genau das Problem:
Weil man nicht so fit ist, hat man kaum Chancen, an so einem ausgetüftelten Konzept irgendwas zu ändern
Eia hat geschrieben:Lass die Geburtstage in ihrem eigenen Bereich und hänge die SVERWEIS-Funktion mit & an, z.B.:
=WENN(ODER(A9="";ISTFEHLER(D9));"";SVERWEIS(A9;Feiertage;3;0)&WENN(ISTNV(SVERWEIS(A9;Geburtstage;2;0));"";ZEICHEN(19)&SVERWEIS(A9;Geburtstage;2;0)))
Wenn ich deine Formel benutze erhalte ich "#NAME?" als Ergebnis.
So was in der Art wie du schreibst hatte ich ursprueglich auch vor. Ich wollte fuer jede meiner vier "Eintragskategorien" einen eignen SVERWEIS aufruf jeweils mit & verknuepfen. Warum auch immer, es klappt nicht. Ich habe/hatte das Gefuehl, das es an der Bereichsangebe liegt. Jedesmal wenn ich da nur einen Tabellenname eintrage geht's nicht.
Den Tabellennamen kann man da nicht nehmen. Man muss schon einen Zellbereich angeben oder einen Bereichsnamen, den man zuvor festgelegt hat. In dieser Datei wurden einfache Namen verwendet (schau mal unter Einfügen/Namen/festlegen). Ich würde Bereichsnamen nehmen Daten/Bereich festlegen.
Weiterhin bleibt auch so das Problem, das es Tage gibt, an denen zwei Menschen Geburtstag haben, und ich diese gerne im Kalender stehen haette. OK, ich koennte sie in eine Zeile der Geburtstagstabelle packen, aber das gefaellt mir eigentlich nicht.
Ja, ich würde die Geburtstagstabelle auch anders aufbauen. Wenn Du ein wenig Geduld hast, werde ich mal was basteln.
Verfasst: Do, 18.01.2007 18:36
von Eia
Schau mal, ob Du
damit etwas anfangen kannst.
Verfasst: Fr, 19.01.2007 08:44
von roli
@Karolus: Joh, nur duerfen Freunde, Verwante und Bekannte auch auf'm Feiertag Geburtstag haben, super. Bleibt nur noch das Problem mit mehreren Geburtstagen an einem Tag.
@Eia:
Eia hat geschrieben:Das ist genau das Problem: Weil man nicht so fit ist, hat man kaum Chancen, an so einem ausgetüftelten Konzept irgendwas zu ändern
Das stimmt schon, aber wenn man sich immer nur damit beschaeftigt, die Summe ueber Spalte A1:A5 zu bilden wird man auch nicht fitter.
Eia hat geschrieben:Den Tabellennamen kann man da nicht nehmen. Man muss schon einen Zellbereich angeben oder einen Bereichsnamen, den man zuvor festgelegt hat. In dieser Datei wurden einfache Namen verwendet (schau mal unter Einfügen/Namen/festlegen). Ich würde Bereichsnamen nehmen Daten/Bereich festlegen.
Bingo, das war's. Wieder was gelernt.
Eia hat geschrieben:Ja, ich würde die Geburtstagstabelle auch anders aufbauen. Wenn Du ein wenig Geduld hast, werde ich mal was basteln.
Danke, das Angebot nehme ich natuerlich gerne an. Ich versuch's zwar zwischenzeitlich auch weiter, aber im Moment fehlt mir noch die zuendende Idee.
Danke euch beiden
Verfasst: Fr, 19.01.2007 08:54
von Eia
roli hat geschrieben:Bleibt nur noch das Problem mit mehreren Geburtstagen an einem Tag.
Du kannst natürlich einfach mehrere Namen in das Feld mit dem Geburtstagsnamen schreiben. Ansonsten schau Dir mal die Datei an, die ich in meinen letzten Beitrag gelinkt habe. Die zeigt auch gleich an, wie alt jemand wird (sofern man das Geburtsjahr kennt)
Verfasst: Fr, 19.01.2007 09:49
von roli
Moin,
Eia hat geschrieben:Du kannst natürlich einfach mehrere Namen in das Feld mit dem Geburtstagsnamen schreiben.
Das war ja genau das was ich nicht wollte. Wenn mir allerdings nichts besseres eingefallen waere, waere das die Loesung geworden.
Eia hat geschrieben:Ansonsten schau Dir mal die Datei an, die ich in meinen letzten Beitrag gelinkt habe. Die zeigt auch gleich an, wie alt jemand wird (sofern man das Geburtsjahr kennt)
Oh man, das ist Klasse. Noch besser als ich's mir vorgestellt haette. Wie lange brauch'st du dann fuer "kleine" Probleme?
Was mich allerdings etwas stutzig macht, ist das du in der Formeln in Kalender Tabelle "SVERWEIS(A5;Feiertage;2;0) ..." benutzt, ich aber "Feiertage" nicht unter Einfügen->Namen->Festlegen sehe. Jetzt dachte ich schon ich haette was verstanden, und dann ist's wohl doch nicht so.
Was ich uebrigens noch gut faende, waere, wenn es hier im Forum einen Bereich gaebe, wo man Vorlagen sammeln wuerde. Das dieser Kalender jetzt das "non plus ultra" ist will ich ja nicht behaupten, aber vielleicht ist ja doch noch jemand auf der Suche nach soetwas.
Nochmals vielen Dank