Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Listen- und Textfeld kombinieren? Geht das?
zurück: Zahlen hinterlegen weiter: DoCmd.Requery "" - Fehler unter 2000 Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Borero
Mit Wissenslücken versehener SelbstBeibringer


Verfasst am:
07. Feb 2007, 17:47
Rufname:
Wohnort: Wesel

Listen- und Textfeld kombinieren? Geht das? - Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hallo zusammen,

ich erstellte mir zur Zeit eine Datenbank, die unter anderem Kundendaten mit Namen und Anschrift enthält. Für mein Formular habe ich die folgende Anforderung, bei der ich bisher versucht habe, sie selbst zu erreichen, was aber noch nicht geklappt hat.

Man stelle sich das Formular "Kunde" vor, in dem es Textfelder zu "Letzte Bestellung", "Name", "Hausnummer", "Ort" (und "PLZ") sowie ein Listenfeld "Straße" gibt. Dazu gibt es natürlich eine Tabelle mit entsprechenden Feldern. Außerdem gibt es eine Tabelle "Straßen", die ausschließlich die Straßen, wo die Kunden wohnen, enthält. Nun soll es so eingerichtet werden, dass das Listenfeld "Straße" im Formular "Kunde" seine Werte aus der Tabelle "Straßen" bekommt und wenn ein neuer Kunde eingefügt wird, der auf einer Straße wohnt, die noch nicht in der Tabelle "Straßen" steht, diese automatisch dort ergänzt wird. Ersteres ist kein Problem, letzteres allerdings schon, da das Listenfeld nur Werteeingaben zulässt, die (in dem Fall) bereits in der Tabelle stehen, aus der das Listenfeld seine Werte bezieht.

Andererseits sollte bei Hinzufügung eines neuen Kunden, der auf einer bekannten Straße wohnt (also eine, die bereits in der Tabelle "Straßen" steht), die Eingabe nach wie vor automatisch vervollständigt werden (das ist beim Listenfeld der Fall - ich schreibe das, falls mein Problem nicht mit der alleinigen Beeinflussung eines Listenfeldes zu lösen ist, sondern eine andere Art von Feld erfordert).

Ich könnte mir vorstellen, dass man ein ganz normales Textfeld verwendet. Allerdings, wie kann man es dann einstellen, dass es Eingaben ebenfalls automatisch vervollständigt? Um das zu leisten, muss es ja in irgendeiner Form eine Beziehung zu der Tabelle "Straßen" haben, um zu wissen, welche Straßen schon drin sind (somit vervollständigt werden können) und welche nicht. Darüber hinaus muss sichergestellt sein, dass Straßen nicht doppelt in der Tabelle "Straßen" gespeichert werden können (von Schreibfehlern bei der Eingabe abgesehen Smile ).

Die Straße sollte anschließend in der Tabelle "Kunden" gespeichert werden. Da die Straßen bereits in einer gesonderten Tabelle vorliegen, wäre es schwachsinnig, diese erneut mit vollem Namen in der Tabelle "Kunden" zu speichern, daher wäre die Speicherung der ID ratsamer. Allerdings ist hier widerum (zumindest für mich) ein Kompromiss einzugehen:
- Speichere ich die Straßen unsortiert (so wie sie gerade kommen), bleiben die IDs immer die gleichen und ändern sich auch dann nicht, wenn neue Kunden eingefügt werden (gleiche Straße behält gleiche ID) ... oder
- halte ich die Tabelle "Straßen" stets nach Alphabet (höherer Verwaltungsaufwand, andererseits schneller zu suchen) sortiert und muss dann alle IDs (im schlechtesten Fall) korrigeren, wenn z.B. die Straße "Aachener Straße" eingefügt wird, da diese dann ganz oben stände und ID "1" bekäme?

Über eine Antwort wäre ich sehr erfreut, zumal es viel zu lesen gibt... Confused Smile

Nette Grüße,
Borero
Nouba
nicht ganz unwissend :)


Verfasst am:
07. Feb 2007, 18:08
Rufname:
Wohnort: Berlin


AW: Listen- und Textfeld kombinieren? Geht das? - AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hallo Borero,

wenn die Straßennamen sowieso in der Kundentabelle deponiert werden, würde ich darüber einen Index anlegen und die Straßentabelle in die Tonne hauen. Ein Kombifeld zur Eingabe des Straßennamens mit der Datensatzherkunft SELECT STRASSE FROM KUNDENTABELLE GROUP BY STRASSE; oder auch ein SELECT DISTINCT STRASSE FROM KUNDENTABELLE; (ich weiß nicht, was schneller in der Ausführung ist) sollte dann genügen. Im Nach Aktualisierung Ereignis des Formulars muss man dann das Kombifeld veranlassen, seine Daten neu einzulesen (Me!STRASSE.Requery - wenn es hartnäckig sein sollte, Me!STRASSE.RowSource = Me!STRASSE.RowSource verwenden), damit ein neu eingegebener Straßenname in der Auflistung erscheint.

PS: Die letzte Kunden-Bestellung würde ich nicht abspeichern, sondern anhand der Bestelldaten ermitteln.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Borero
Mit Wissenslücken versehener SelbstBeibringer


Verfasst am:
08. Feb 2007, 23:03
Rufname:
Wohnort: Wesel

AW: Listen- und Textfeld kombinieren? Geht das? - AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hallo Nouba,

vielen Dank für deine Antwort.

Der Tipp mit dem Index hat wie erwartet ohne Probleme funktioniert.

Bei der Aktualisierung des Listenfelds hat es etwas länger gedauert: Aus irgendeinem Grund ließ sich dein angegebener Befehl nicht direkt in das Feld Nach Aktualisierung eingeben. Stattdessen musste ich dafür ein Makro erstellen. Dessen Namen habe ich dann in das Feld eingetragen. Damit funktioniert es schließlich.

Gruß,
Borero
KlausMz
Moderator Access


Verfasst am:
09. Feb 2007, 00:00
Rufname:
Wohnort: Irgendwo in der Pfalz

Re: AW: Listen- und Textfeld kombinieren? Geht das? - Re: AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Borero - 08. Feb 2007, 22:03 hat folgendes geschrieben:
Bei der Aktualisierung des Listenfelds hat es etwas länger gedauert: Aus irgendeinem Grund ließ sich dein angegebener Befehl nicht direkt in das Feld Nach Aktualisierung eingeben.
Direkt in dieser Zeile kann man sowieso keine VBA-Befehle eintragen, sondern nur Makronamen. Verabschiede Dich am besten gleich von Makros.

In der Zeile mit dem Makronamen kannst Du auch [Ereignisprozedur] auswählen, dann klickst Du auf die 3 punkte hinten, in das sich dann öffnende Fenster kommt der VBA Code von Nouba.

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
Borero
Mit Wissenslücken versehener SelbstBeibringer


Verfasst am:
12. Feb 2007, 23:30
Rufname:
Wohnort: Wesel

AW: Listen- und Textfeld kombinieren? Geht das? - AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

N'Abend Klaus,

das habe ich mehrmals versucht, aber es hat nicht funktioniert. Ich bin mir dennoch recht sicher, dass der Fehler auf meiner Seite liegt. Aber zur Zeit ist mir egal, da ich froh bin, dass es funktioniert. Von VBA habe ich nämlich (noch) keine Ahnung, und wie es mir scheint, lassen sich viele individuelle Probleme nur mithilfe dessen lösen.

Verrätst du mir, warum ich besser nicht mit Makros arbeiten sollte?

Gruß,
Borero
KlausMz
Moderator Access


Verfasst am:
13. Feb 2007, 00:02
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Listen- und Textfeld kombinieren? Geht das? - AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hallo,

zur Info nachfolgende Links:
Die Nachteile von Makros
Makros konvertieren nach VBA

Das kann man alles auf dieser sehr informativen Seite finden:
Access für Anfänger

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
Borero
Mit Wissenslücken versehener SelbstBeibringer


Verfasst am:
17. Feb 2007, 23:14
Rufname:
Wohnort: Wesel

Re: AW: Listen- und Textfeld kombinieren? Geht das? - Re: AW: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hallo Nouba,
Nouba - 07. Feb 2007, 17:08 hat folgendes geschrieben:
wenn die Straßennamen sowieso in der Kundentabelle deponiert werden, würde ich darüber einen Index anlegen und die Straßentabelle in die Tonne hauen.
da ich mittlerweile eine Vielzahl kleinerer Probleme meiner Datenbank lösen konnte (mit dem Rest werde ich mich nach und nach hier melden Very Happy), komme ich nochmal auf deinen Beitrag zurück.

Die Datenbank wird im Laufe der Zeit immer mehr Kunden beherbergen. Dabei wird es zwangsläufig passieren, dass Kunden mit der gleichen Straße mit unterschiedlicher Hausnummer eingetragen werden. Die Straße und Hausnummer sind hierbei in zwei getrennten Feldern in der Tabelle "Kunden" untergebracht. Jetzt frage ich mich: Die Datenbank bläht sich doch nur unnötig auf, wenn Kunden hinzugefügt werden, die sich durch die gleiche Straße auszeichnen. Ich bin mir momentan nicht der Möglichkeiten bewusst, die es zur Optimierung dieser Sache gibt (sonst würde ich nicht schreiben Wink), aber vor allem ist von Belang, dass sich eine Optimierung trotz schon vorhandener Einträge möglichst problemlos einarbeiten lässt.

Nette Grüße,
Borero
Willi Wipp
Moderator


Verfasst am:
23. Jun 2007, 01:37
Rufname:
Wohnort: Raum Wiesbaden


Re: Listen- und Textfeld kombinieren? Geht das? - Re: Listen- und Textfeld kombinieren? Geht das?

Nach oben
       Version: Office 2003

Hi Borero,

wenn man ganz streng nach der Normierung geht , dann wuerde die Strasse wohl in eine separate Tabelle gehoeren.
Wenn man z.B. eine DB erstellt in der nur die Daten eines Stadtteils oder einer Stadt enthalten sind,
dann kann das aus meiner Sicht auch sinnvoll sein.
Es kommt darauf an wie viele Eintraege im vergleich zu der direkten Fuehrung des Feldes in der Tabelle gespart werden.
Als Faustformel wuerde ich sagen bei einer Einsparung von < 10 % macht es wohl wenig Sinn.
Man darf dabei nicht vergessen das auch die Verlinkung von Tabellen ueber JOIN's Performanz kostet.
So erfasst Du sicher auch mehrere Mueller oder Jens in Deiner DB,
aber Du wirst darum doch nicht gleich eine Tabelle Vorname und eine fuer Nachname implementieren.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Werte aus Kombifeld in Textfeld auswerten!! Hilfe! 10 KevinS 716 08. Jan 2008, 17:44
fruitcruiser Werte aus Kombifeld in Textfeld auswerten!! Hilfe!
Keine neuen Beiträge Access Tabellen & Abfragen: Kombinieren zweier unterschiedlicher Tabellen in Access 1 thogsc 607 30. Nov 2007, 17:53
maike kaluscha Kombinieren zweier unterschiedlicher Tabellen in Access
Keine neuen Beiträge Access Tabellen & Abfragen: Datenblattansicht Textfeld mit Boolschem Wert umformatieren 2 Muriel 587 23. Aug 2007, 10:08
Muriel Datenblattansicht Textfeld mit Boolschem Wert umformatieren
Keine neuen Beiträge Access Tabellen & Abfragen: abfragen kombinieren 2 ujaldi 502 16. Aug 2007, 15:10
ujaldi abfragen kombinieren
Keine neuen Beiträge Access Tabellen & Abfragen: Textfeld umformatieren 2 Zolldi 605 05. Jul 2007, 14:39
Zolldi Textfeld umformatieren
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrageergebnis in Textfeld (Formular) ausgeben 1 martin7720 1006 22. Mai 2007, 20:12
jens05 Abfrageergebnis in Textfeld (Formular) ausgeben
Keine neuen Beiträge Access Tabellen & Abfragen: 2 Kriterien kombinieren? 3 Gulsnick 599 22. Mai 2007, 13:32
lothi 2 Kriterien kombinieren?
Keine neuen Beiträge Access Tabellen & Abfragen: Werte einrücken bzw listen verbinden 0 nordischer_84 712 20. März 2007, 10:29
nordischer_84 Werte einrücken bzw listen verbinden
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage: Kriterium aus Textfeld, Problem: ... 1 Tilly 899 22. Feb 2007, 20:59
stpimi Abfrage: Kriterium aus Textfeld, Problem: ...
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragekriterium über Textfeld in Formular eingeben 8 Gast 8266 25. Jan 2007, 17:32
Nouba Abfragekriterium über Textfeld in Formular eingeben
Keine neuen Beiträge Access Tabellen & Abfragen: Makro: SQL-Ausführen -> Textfeld quelle 16 Seega 5016 16. Jan 2007, 23:35
Willi Wipp Makro: SQL-Ausführen -> Textfeld quelle
Keine neuen Beiträge Access Tabellen & Abfragen: Zahlen in Textfeld abfragen 9 tigerganz 3756 08. Jan 2007, 20:58
steffen0815 Zahlen in Textfeld abfragen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Frontpage Forum