Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: UweFFM am Juni 21, 2011, 09:21:05

Titel: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 21, 2011, 09:21:05
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
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: Hondo am Juni 21, 2011, 09:48:19
Hallo,
warum fügst du die beiden Tabellen nicht zu einer zusammen und entfernst anschließlich nicht die doppelten?

Andreas
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 21, 2011, 09:57:35
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]
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 21, 2011, 10:55:30
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.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 21, 2011, 11:03:53
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.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: DF6GL am Juni 21, 2011, 13:52:33
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?

Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 21, 2011, 13:56:23
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.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 21, 2011, 14:54:14
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
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 21, 2011, 15:03:02
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.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 21, 2011, 17:17:30
Hi,

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

Harald
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 22, 2011, 07:24:38
Wenn dieser Fall eintreten würde, wäre es ja nur ein einziger Datensatz den ich dann manuell ergänzen würde.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 22, 2011, 18:15:22
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]
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 22, 2011, 18:32:48
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
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 22, 2011, 18:34:50
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
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: DF6GL am Juni 22, 2011, 18:47:20
Hallo,

schließ mal alle IExplorer-Fenster und starte den IE nochmal neu (oder Deinen Alternativ-Browser). Arbeite Dann nur mit einer Registerkarte auf AOM.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 22, 2011, 19:01:32
Hallo Franz,

danke für die Tipps.
Beim schließen war ich sogar so weit gegangen, dass ich die Workstation runtergefahren hatte und neu gebootet hatte. War auch nur aom offen. (Gibt es etwa noch andere Internetseiten  ;D)

Hatte den Eindruck, dass die obige Meldung immer dann kam, wenn ich noch mal einen Beitrag bearbeiten wollte. Ok, das ging dann halt nicht und so sind die Schreibfehler drin geblieben.

Harald


Nachtrag:
Konnte wieder einen Beitrag ändern. Eventuell traten die Fehler in dem Zeitraum auf, als der Rechner Daten mit http://www.worldcommunitygrid.org/ austauschte.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 27, 2011, 09:18:48
Zitat von: bahasu am Juni 22, 2011, 18:15:22
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


Hallo Harald,

zunächst einmal vielen Dank für deine Hilfe.

Die Abfrage in deinem Beispiel funktioniert auch, allerdings habe ich 2 Probleme wenn ich diese in meine eigene DB übertrage......  :-(

1. Ich bekomme einen Laufzeitfehler '3464' Datentypen in Kriterienausdruck unverträglich. (in meiner DB sind die PLZ in beiden Tabellen als ZAHL definiert)
2. ich benötige nicht die PLZ aus der 2. Tabelle sondern einen Wert der zu dem Datensatz der jeweiligen PLZ gehört. In der Tabelle 2 stehen also Beispielsweise hinter der PLZ in einem weiteren Feld noch JA oder NEIN. Nun muss ich diese Werte den PLZ der Tabelle 1 zuordnen.
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: bahasu am Juni 27, 2011, 18:10:50
N'abend Uwe,

zu der Fehlermeldung bei Postleitzahl. Ich war von einer "Text"-Deklaration ausgegangen, da ich mal gelernt habe, nur das als Zahl zu deklarieren, mit dem auch gerechnet wird. Und eine Addition von Postleitzahlen oder das Wurzelziehen sind wohl eher wenig praxisnah.
Der Fehler war durch ein Gänsefüßchen "'" zustande gekommen, das bei Text notwendig ist, bei Zahl aber zum Fehler führt. Das ist jetzt weg.

Anbei ein zweiter Versuch:
Im Modul habe ich die Funktion erweitert, so dass Du in der Abfrage den Feldnamen vorgeben kannst, den Du angezeigt bekommen möchtest.
In meinem Beispiel heißt der eine Feldname: "Text_Feld" und der andere "Ja_oder_Nein".

Bei der fehelnden PLZ 60324 stehen jetzt also die Werte, die in der zweiten Tabelle bei 60325 stehen. Hoffentlich habe ich das jetzt so korrekt verstanden.

Harald


Noch ein Nachtrag zu den Postleitzahlen.
Mit der Deklaration als Text machst Du Dir das Leben speziell bei denen, die mit "0" anfangen (u.a. Leipzig, Dresden), einfacher. Bei der Zahl-Deklaration verschwindet die führende 0 (Format-Trickserei, nein danke).

[Anhang gelöscht durch Administrator]
Titel: Re: Abfrage ähnlich SVERWEIS
Beitrag von: UweFFM am Juni 30, 2011, 10:48:42
das sieht sehr gut aus.....



muchas gracias