Funktion INDEX und VERGLEICH

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Funktion INDEX und VERGLEICH

von ghoppe » Do, 23.02.2006 09:16

Karolus hat geschrieben:Hallo
Was ich jetzt noch nicht verstanden habe:
Was steht den jetzt optional im Suchbereich
'epfalz'
oder
'mehrtextepfalz'

Gruß
Karo
Hi
Der Text im Suchbereich besteht aus dem Ländernamen.
Enthält der Ländername kein e, wird ein e vorne angefügt.
Im Falle Pfalz wird dann ePfalz übergeben.
Das ganze ist fest codiert.

von Karolus » Mi, 22.02.2006 16:06

Hallo
Was ich jetzt noch nicht verstanden habe:
Was steht den jetzt optional im Suchbereich
'epfalz'
oder
'mehrtextepfalz'

Gruß
Karo

von ghoppe » Mi, 22.02.2006 15:18

Hab es ausprobiert.
Mit kleiner korrektur funktioniers
=SVERWEIS(".*e.*";H31:J53;3;0)
Ein . vorm ersten * eingefügt und es tut.

Optimalste Lösung.
Kurz und knackig.

Merci. :P

von Karolus » Mi, 22.02.2006 15:03

Hallo

ghoppe schrieb:
Bei richtiger Pflege der Tabellenblätter kann es nur einen Wert geben.[
Dann isses ja gut :-)

ps. dann funktioniert auch:
=SVERWEIS("*e.*";H31:J53;3;0)

Gruß
Karo

von ghoppe » Mi, 22.02.2006 14:52

Karolus hat geschrieben:Hallo

Lenu schrieb
Aber Achtung: damit wird Dir einfach die Position des ersten gefundenen Wertes geliefert. Kannst Du sicher sien, dass das der richtige Wert ist?
Dem kann ich mich anschliessen, das kann also nur dann funktionieren wenn "e.*" nur einmal im Suchbereich auftaucht.

Gruß
Karo
Danke für den Hinweis.
Für jedes Bundesland ist ein Tabellenblatt angelegt worden.
Über die Eingabe einer PLZ, kombiniert mit einer Suchrutine auf den Bundesland-Tabellenblättern wird ein entsprechender Wert an die entsprechende Zelle in der Spalte H in dem Suchtabellblatt übergeben.

Bei richtiger Pflege der Tabellenblätter kann es nur einen Wert geben.
Die Pflege wird an anderer Stelle durchgeführt.

Noch mal Danke für die tolle Hilfe.

CU ghoppe

von Karolus » Mi, 22.02.2006 14:38

Hallo

Lenu schrieb
Aber Achtung: damit wird Dir einfach die Position des ersten gefundenen Wertes geliefert. Kannst Du sicher sien, dass das der richtige Wert ist?
Dem kann ich mich anschliessen, das kann also nur dann funktionieren wenn "e.*" nur einmal im Suchbereich auftaucht.

Gruß
Karo

von ghoppe » Mi, 22.02.2006 14:33

Karolus hat geschrieben:Hallo
das Sternchen vor dem e war zuviel und hinter dem e brauchts noch den Punkt.
Mit folgender Formel komme ich zum gewünschten Ergebniss "Pfalz"


=INDEX(J31:J53;VERGLEICH("e.*";H31:H53;0))

Evtl. musst du unter ->Extras ->optionen 'scalc' -berechnen-
die Verwendung von 'regulären Ausdrücken' in Formeln erlauben.
Der * passt schon.
Die Einstellungen waren es.

Mit dieser Formel:
=INDEX(J31:J53;VERGLEICH(".*e.*";H31:H53;0))
der Einstellung FUNKTS

Bingo, das waren die entscheidenden Hinweise.
Vielen Dank für die Hilfe. :D :D

von Karolus » Mi, 22.02.2006 14:24

Hallo
das Sternchen vor dem e war zuviel und hinter dem e brauchts noch den Punkt.
Mit folgender Formel komme ich zum gewünschten Ergebniss "Pfalz"


=INDEX(J31:J53;VERGLEICH("e.*";H31:H53;0))

Evtl. musst du unter ->Extras ->optionen 'scalc' -berechnen-
die Verwendung von 'regulären Ausdrücken' in Formeln erlauben.

von ghoppe » Mi, 22.02.2006 14:23

Lenu hat geschrieben:
ghoppe hat geschrieben:Leider nicht

In der Spalte H wird nach einem Teilstring e gesucht und bei treffer der Inhalte von Spalte J ausgegeben.
Wenn ich Dich recht verstehe, suchst Du nicht nach einem genauen Wert (das hattest Du im ersten Beitrag geschrieben) sondern nach irgendwas, das ein e enthält. Dazu brauchst Du einen regulären Ausdruck und in OO müsstest Du das dann so schreiben:
".*e.*"
Mehr zu regulären Ausdrücken findest Du im Hilfetext.
Aber Achtung: damit wird Dir einfach die Position des ersten gefundenen Wertes geliefert. Kannst Du sicher sien, dass das der richtige Wert ist?
Hab es jetzt so versucht:
=INDEX(J31:J53;VERGLEICH(".*e.*";H31:H53;0))

Ergebnis #NV :cry:

von Lenu » Mi, 22.02.2006 14:16

ghoppe hat geschrieben:Leider nicht

In der Spalte H wird nach einem Teilstring e gesucht und bei treffer der Inhalte von Spalte J ausgegeben.
Wenn ich Dich recht verstehe, suchst Du nicht nach einem genauen Wert (das hattest Du im ersten Beitrag geschrieben) sondern nach irgendwas, das ein e enthält. Dazu brauchst Du einen regulären Ausdruck und in OO müsstest Du das dann so schreiben:
".*e.*"
Mehr zu regulären Ausdrücken findest Du im Hilfetext.
Aber Achtung: damit wird Dir einfach die Position des ersten gefundenen Wertes geliefert. Kannst Du sicher sien, dass das der richtige Wert ist?

von ghoppe » Mi, 22.02.2006 14:10

Leider nicht

In der Spalte H wird nach einem Teilstring e gesucht und bei treffer der Inhalte von Spalte J ausgegeben.

von Lenu » Mi, 22.02.2006 14:05

ghoppe hat geschrieben:OO ist für mich absolutes Neuland.

Die Formel kommt so aus Microsoft Excel.
Und weiter? Ist das Problem jetzt gelöst?

von ghoppe » Mi, 22.02.2006 14:02

OO ist für mich absolutes Neuland.

Die Formel kommt so aus Microsoft Excel.

von Lenu » Mi, 22.02.2006 13:51

Warum hast Du das "e" denn in Sternchen eingefasst?
Erstens macht das ganze ja wohl nur Sinn mit exakten Werten und zweitens müsstest Du reguläre Ausdrücke in OO anders schreiben.

von ghoppe » Mi, 22.02.2006 13:41

So Sieht mein Tabellen Ausschnitt aus mit dem gearbeitet wird.
Durch die eingabe einer PLZ wird die Spalte H gefüllt oder auf #NV gesetzt.


Die Formel die im MS-Excel verwendet wird:

=INDEX(J31:J53;VERGLEICH("*e*";H31:H53;0))
In dem Feld wo die Formel steht sollte jetzt der Text Pfalz stehen und nicht #NV

Z/S H I J31 #NV 7 Koblenz
32 #NV 22 Thüringen
33 #NV 17 Schleswig Holstein
34 #NV 16 Sachsen-Anhalt
35 #NV 8 Mecklenburg-Vorpommern
36 #NV 3 Brandenburg
37 #NV 1 Bayern
38 #NV 20 Saarland
39 #NV 14 Rheinhessen
40 #NV 6 Hessen
41 #NV 11 Nordrhein
42 #NV 23 Westphalen-Lippe
43 #NV 4 Bremen
44 #NV 9 Niedersachsen
45 #NV 5 Hamburg
46 #NV 2 Berlin
47 #NV 15 Sachsen
48 #NV 10 Nordbaden
49 #NV 18 Südbaden
50 #NV 12 Nordwürttemberg
51 ePfalz 13 Pfalz
52 #NV 21 Trier
53 #NV 19 Südwürttemberg

Nach oben