Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Abfrage ähnlich SVERWEIS

Begonnen von UweFFM, Juni 21, 2011, 09:21:05

⏪ vorheriges - nächstes ⏩

UweFFM

Hallo,

ich, als Anfänger, hätte mal eine Frage an die Fachleute:

Ich habe 2 Tabellen in denen PLZ enthalten sind. Allerdings sind nicht alle PLZ in beiden Tabellen enthalten.

Nun zu meinem Anliegen:

Ich möchte mir alle Werte der Tabelle 1 (vollständige PLZ) mit den Werten der Tabelle 2 (unvollständige PLZ) anzeigen lassen. Sollte die PLZ in Tabelle 2 nicht vorhanden sein, sollen die Werte aus der nächsten Zeile gezogen werden.

In Excel würde das mit =sverweis(PLZ_Tabelle1; Tabelle2; wert; wahr) funktionieren, nur gibt es SVERWEIS ja leider in Access nicht.

Ich benutze Access 2007 und sollte vielleicht noch anmerken das ich keinerlei VBA Erfahrung habe.

Vielen Dank im voraus für eure Tips und Lösungsvorschläge

Hondo

Hallo,
warum fügst du die beiden Tabellen nicht zu einer zusammen und entfernst anschließlich nicht die doppelten?

Andreas

UweFFM

#2
ich hätte ja keine doppelten Einträge sondern in der Tabelle fehlen einige PLZ.

Mal ein Beispiel um es zu veranschaulichen was genau ich meine......

Nehmen wir einmal an das ich für die Stadt Frankfurt mit all den dazugehörigen PLZ einen bestimmten Wert hinterlegen möchte.

Nun habe ich in der Tabelle 1 alle PLZ für Frankfurt gelistet und in der Tabelle 2 stehen nun die Werte die ich den jeweiligen PLZ zuordnen möchte. Leider sind aber in der Tabelle 2 nicht alle PLZ enthalten. Ich bräuchte aber als Ergebnis der Abfrage die gesuchten Werte auch für die fehlenden PLZ.

Anbei mal ein Excelsheet das den Sachverhalt mal ein wenig visualisiert. Darin enthalten auch den Sverweis den ich nutzen würde.

[Anhang gelöscht durch Administrator]

bahasu

Hallo,

darf ich voraussetzen, dass Du in access eine Abfrage erstellen kannst, bei der zwei Tabellen vorkommen, die über einen Schlüssel verknüpft sind?

Wenn ja, gibt es bei der Verknüpfung 3 Möglichkeiten (im Abfragentwurf einfach die Verknüpfungslinie links anklicken und mit der rechten Maus die Eigenschaften aufrufen). Probier mal die zweite Möglichkeit aus.

Harald

PS Aufwendiger wird es, den "nächsten" Wert anzuzeigen.
Servus

UweFFM

Das kann ich, aber ich versuche ja im Falle das eine PLZ in Tabelle 2 nicht enthalten ist die Werte der nächsten PLZ einzubinden.

Die Version mir alle Werte der Tabelle 1 anzeigen zu lassen und nur die Werte der Tabelle 2 bei denen beide Feldinhalte gleich sind, üfhrt leider nicht zum erwünschten Ergebnis da dann bei den fehlenden PLZ das Feld Wert leer bleibt.

DF6GL

Hallo,


so ganz ist Dein Vorhaben nicht nachzuempfinden:

Zitatich versuche ja im Falle das eine PLZ in Tabelle 2 nicht enthalten ist die Werte der nächsten PLZ einzubinden.

-- wodurch sind die "nächsten PLZ-Werte"  definiert?
-- was hat der "nächste PLZ-Wert" mit einer fehlenden PLZ zu tun?

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

UweFFM

das zu erklären, würde jetzt zu weit in Internas führen......   ;)

Fakt ist das ich diese beiden Tabellen verbinden muss.

Sofern die PLZ in beiden identisch sind, ist der Wert aus Tabelle 2 direkt zu übernehmen. Falls die PLZ in Tabelle 2 fehlt, soll der Wert aus der nächsten Zeile (nächste PLZ) übernommen werden.

bahasu

Hallo

"nächste" bedeutet also wenn 60339 nicht da, dann 60342 (also von einem Ortskreis zum nächsten???)
Und wenn ich das dann weiterführe, wenn es zu 6.... (Hessen) nichts gibt, dann nehme Baden Württemberg (7....) {oder so ähnlich?}

Das bedeutet auch, wenn man mal eine neue Postleitzahl zwischendurch eingibt, stimmt die alte Tabelle/Zuordnung/Abfrage nicht mehr.

Soll das wirklich so sein?

Harald
Servus

UweFFM

im Extremfall wäre es so wie von dir dargestellt.

Allerdings wird dieser Abgleich nur max 1 x pro Quartal gemacht und zweitens fehlen max. 1% der PLZ, so das größere Sprünge nicht absehbar sind.

bahasu

Hi,

noch eine Frage: was soll passieren, wenn bei der letzten Zahl keine gleiche und keine "nächste" vorhanden ist?

Harald
Servus

UweFFM

Wenn dieser Fall eintreten würde, wäre es ja nur ein einziger Datensatz den ich dann manuell ergänzen würde.

bahasu

#11
N'abend,

anbei ein Beispiel.
Im Modul ist die Funktion, die in der Abfrage aufgerufen wird: Damit wird ein passender Wert (gleich oder der "nächste") gesucht.

Harald


[Anhang gelöscht durch Administrator]
Servus

bahasu

#12
N'abend

die Forums-Software kickt mich laufend raus, deswegen mal so der Versuch, ein Ergebnis zu zeigen:
PLZ_1   Ort_1   Ausdr1
60321   Frankfurt   60321
60322   Frankfurt   60322
60323   Frankfurt   60323
60324   Frankfurt   60325
60325   Frankfurt   60325
60326   Frankfurt   60326
60327   Frankfurt   60327
60328   Frankfurt   60328
60329   Frankfurt   60329
60330   Frankfurt   60330
60331   Frankfurt   60332
60332   Frankfurt   60332
60333   Frankfurt   60333
60334   Frankfurt   60334
60335   Frankfurt   60335
60336   Frankfurt   60337
60337   Frankfurt   60337
60338   Frankfurt   60338
60339   Frankfurt   60339
60340   Frankfurt   60340
60341   Frankfurt   60341
60342   Frankfurt   60342
60343   Frankfurt   60343
60344   Frankfurt   60344
60345   Frankfurt   60345
Servus

bahasu

An die Forums-Leute:

Ihre Sitzung ist abgelaufen. Bitte senden Sie Ihren Beitrag erneut.
Kein Betreff angegeben.
Textfeld wurde nicht ausgefüllt.

Das erhalte ich laufend. Was mache ich falsch?

Harald
Servus

DF6GL

Hallo,

schließ mal alle IExplorer-Fenster und starte den IE nochmal neu (oder Deinen Alternativ-Browser). Arbeite Dann nur mit einer Registerkarte auf AOM.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access