Hey Norbert,
also, ich denke, du solltest noch mal über dein Verfahren nachdenken. Das, was du da machst , ist keine Normaliesierung! Und du machst dir dein Leben deutlich einfacher, wenn du PLZ und Orte direkt erfasst.
Erläuterung:
Die Normalisierung soll redundante Informationen in einer Tabelle (Datebank) vermeiden und diese über ander Tabellen verknüpfen.
Nun könnte man tatsächlich eine Abhängigkeit zwischen PLZ und Orte erkennen, dann aber wirst du schnell sehen, dass dieses so einfach nicht ist. Eine Postleitzahl identifiiert zwar einen Ort eindeutig, nicht aber der Ort eine PLZ. Hierzu brauchst du acuh die Strasse - und die direkten Postfächer von Großkunden sind dann noch etwas anderes.
Wenn du also eine Normalisierung willst, dann müsstest du die PLZ als Schlüssel nutzen - hier gibt es nur eine Beziehung, also 1 PLZ bestimmt den Ort. In deiner zweiten Tabelle wäre also die PLZ der Primärschlüssel und jeder PLZ wäre eine Ortsbezeichnung zugeordnet (die kann und wird dann allerdings auch häufiger auftreten). Die Beziehung wäre also tabelle1-plz zu tabelle2-plz, eine 1:1 Beziehung. Jetzt muss natürlich die PLZ Tabelle schon vollständig sein, sonst geht das nicht. Und der Primärschlüssel (PLZ) darf natürlich nicht auf autoinkrement stehen.
Auch müssen die Feldtypen beider PLZ Felder übereinstimmen - sonst gibt es wieder Probleme.
Also, das ist alles viel komplizierter als es auf den ersten Blick erscheint. Gerade für den Newbie solltest du dir hier keine "grauen Haare" wachsen lasen und PLZ und Ort gemeinsam erfassen
Soviel zum "Normalisierungsproblem".
Jetzt zu deinen formularen: zunächst kannst du die Tabellen - wie bei dir beschrieben verknüpfen.
Auch Formulare kannst du so erzeugen. Nur: wie stellst du dir die Beziehung vor?
Also: du erzeugst einen neune Datensatz im Hauptformular. Hier ist das Feld "Name" sichtbar, du gibst Daten ein. Jetzt speicherst du den Satz. Die ID wird automatisch gefüllt, der Name eingetragen. Fertig. Mehr hast du nicht vorgegeben. Das Feld "plz_fk" bleibt leer, du hast nichts eingegeben, da steht also nix drin. Dein Unterformular enthält zwei Felder: "PLZ" und "Ort". Schön, gib Daten ein, speicher die, die ID wird automatisch hochgezählt - fertig. Was fehlt: Die Verbindung zur anderen Tabelle, der Fremdschlüssel. Der kann nicht automatisch gesetzt werden, den musst du manuell oder über Makro erzeugen und setzen, also theoretisch zwei weitere Felder, in denen du den Fremdschlüssel explizit eingibst. Das ist natürlich nicht praxistauglich. Also, das Problem der automatischen Verknüpfung von Hauptformular mit Subformularen während der Eingabe ist mit einfachen Klicks, Mausziehen etc nicht zu machen, das Auslesen der Daten aber schon.
Wenn dich das tiefer interessiert, wirst du um ein gutes Buch nicht drumherum kommen. Dort wird dann auch beschrieben, wie dieProgrammierung zu machen ist, wie Normalisierung funktioniert, Zusammenhänge, Grundlagenwissen.
Oder du tastest dich Schritt für Schritt ran, dann fan nicht mit so einem "Problem" an
Viele Grüße
Thomas