Neuigkeiten:

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

Mobiles Hauptmenü

Daten einer Tabelle über PullDown-Menü in ...

Begonnen von Benny80, März 27, 2019, 16:43:49

⏪ vorheriges - nächstes ⏩

Benny80

Ok anderer Ansatz.

Also ich besitze ein Anwender Formular und möchte in diesen Formular die leeren ungebundenen Textfelder über ein Pull-Down Feld kompletieren. Das Pull-Down Feld soll seine Daten aus der Tabelle tblBibliothek beziehen.

Genauer... das Formular [formAnwendung] bezugnehmend auf die Tabelle [tblAnwendung] besitzt Felder mit Bestellinformationen und  7 ungebundenen Felder, die auf Felder in der Tabelle [tblAnwendung] verweisen sollen.

In diese Felder möchte ich über ein Pulldown-Menü folgende Informationen aus der Tabelle [tblBibliothek] erzeugen, die sich dann über die 7 Textfelder verteilen und die Tabelle [tblAnwendung] füllen.

"Vorname", "Nachname", "Strassenname", "PLZ", "Ort", "Mail" und Telefonnummer.

Ich hoffe das dies über VBA ohne zu viel Aufwand möglich ist.

Also fülle ich eine Tabelle über eine andere Tabelle. Denke dies wird funktionieren oder?

Keine Angst, wie man ein PullDown Menü anlegt, weiss ich, nur wird dabei kein Textfeld ausgefüllt.

MzKlMu

#1
Hallo,
das ist genau der gleiche Käse.
Auch hier wird eine Anfügeabfrage gebraucht und die Daten müssen in eine Tabelle.

Die BeispielDB in dem anderen Forum nutzt zum Erkennen der Hintergründe rein gar nix. Da sieht man 3 Tabellen und sonst gar nix, warum(!) die Daten von einer Tabelle in eine andere müssen ist da nicht zu erkennen und gesagt hast Du es immer noch nicht.

Ich würde mal behaupten, das Vorhaben ist ersatzlos überflüssig. So wie ich das sehe, würde man das einfach über die Beziehungen der Tabellen lösen. Da braucht es dann keinen Code, keinen Buchstaben.

Ohne genaue Erklärung der Hintergründe steige ich aber hier aus.
Gruß Klaus

Benny80

Ok in der Bibiothek sind die Daren der Kunden gespeichert, die ich in die Bestellliste über ein PullDown Menü übertragen möchte. Die Kunden sind zu 90% über die Jahre die selben. Aber ihre Bestellungen und die Menge variert extrem. Es gibt ein Formular, dass ich jedesmal über ein Word Dokument ausfüllen muss. Die Optik über Access zu erstellen ist für mich leicht, aber dieses Ausfüllen nicht gerade so einfach. Jeder Datensatz soll eine Bestellung darstellen, die ich auch später noch aufrufen möchte. Somit müssen diese Daten fest in diese Tabelle übertragen werden.

Das ist der Grund. Ist relativ Simpel. Der Grund der Zwischenablage (damals) sollte dazu diene  die daten vor mehr maligen übertragen verändern zu können. So das zum Beispiel der Kunde X falls er seine Ware diesen Monat zum Bahn34 zum Bahnhof 45 bekommen würde. Weil es ist zum Beispiel der selbe Kunde aber es werden je Material eine Bestellung erzeugt. Und nun jedesmal zusätzlich die Anschrift zu ändern. Wollte ich dadurch umgehen.

MzKlMu

Hallo,
dachte ich es mir doch. Deine Vorhaben ist einfach überflüssig.
Die Tabelle mit den Kundendaten braucht einen Primärschlüssel und dieser Primärschlüssel wird als Fremdschlüssel in die Bestellliste übertragen. Nur dieses Feld. Von den restlichen Feldern des Kunden wird kein einziges übertragen. Damit hast Du über eine Abfrage automatisch auch die vollständigen Kundendaten zur Ansicht zur Verfügung. Ohne irgend etwas programmieren zu müssen.
Die Lieferadressen der Kunden müssen in eine extra Tabelle mit einem Fremdschlüssel zum Kunden. Damit bist Du dann in der Lage zu jeder Bestellung beliebige Adressen des Kunden zu speichern, alles automatisch, ohne Code.
Die Standardadresse wird als Standardwert im Fremdschlüsselfeld für die Lieferadresse hinterlegt.

Oberster Grundsatz einer Datenbank außer den Fremdschlüsselfeldern gibt es jedes Feld nur 1x in einer Datenbank. Also Kundenname gibt es nur in einer einzigen Tabelle.

Du solltest Dich mit den Grundlagen einer relationalen Datenbank beschäftigen, so wird das nix.
Gruß Klaus

Benny80

Ich vetstehe das ja und beherzige es auch. Ich heute das Buch Einstieg in SqL bestellt. Sollte in den nächsten Tagen da sein. Bloss ich bin jemand der nie viel über Bücher lernt, ich bin Praktisch veranlagt, wodurch ich eher Learning by doing bevorzuge. Deshalb wollte ich eigentlich nur den Code haben. Weil ich sonst Monate (nach meiner Kenntnis mit Lernbüchern) Jahre benötige, bis ich das habe, was ich wirklich brauche. Ich möchte mur halt nur das Arbeiten vereinfachen um etwas Luft zu bekommen. Da ich aktuell etwas überfordert bin. Aber nun gut. Ich schau dann mal, wie weit ich komme und melde mich dann. Aber ich denke, ich weiss jetzt schon was du meinst 😉 und ich bin dankbar einen neuen ansatz zu haben, mit den ich weiter machen kann. Ich wähle somit zb über die id der 2 tabelle deren gesamten datensatz (jeweiligen) datensatz aus. Denn ich somit im Formular abbilden kann. Klingt sogar sehr logisch. Weil so unnötige Daten (Dopplungen) vermieden werden. Der sinn wird mir gerade beim Schreiben immer mehr klar. Nun verstehe ich wirklich, warum der Rest irgendwie unnötig ist. Warum kopieren, wenn ich selektieren kann aus einer liste.

Benny80

Zum Beispiel: Kunde 4 vom Datensatz 4 von TblAnwendung besitzt den Eintrag beziehung über ID 5 Zumbeispiel von Tabelle Bibiothek auf deren Daten aus ihrem Datensatz 5. Klingt logisch und damit kann ich arbeiten.

MzKlMu

Hallo,
ein Buch über SQL ist das letzte was Du jetzt brauchst. Mit SQL hast Du zunächst mal gar nix am Hut. Das bisschen, was Du für den Anfang brauchst, kannst Du über den Abfrage Entwurf zusammenklicken. Du muss auch unterscheiden, SQL und VBA das eine hat mit dem anderen nichts zu tun. Das kommt in Access nur gemeinsam vor.
Was Du brauchst ist ein Buch über relationale Datenbanken bevorzugt über Access.
Hier noch 2 Links die zum Einstieg sehr gut geeignet sind.

https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/
und
https://www.access-tutorial.de/
und dann noch etwas zu SQL. Das solltest Du aber erst mal noch links liegen lassen. Die ersten Schritte zu SQL lernst Du im 2.Link oben.
https://www.sql-und-xml.de/sql-tutorial/
Gruß Klaus