Neuigkeiten:

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

Mobiles Hauptmenü

Zwei Kombinationsfelder in der gleichen Tabelle kombinieren

Begonnen von Jan.T, März 02, 2020, 10:38:14

⏪ vorheriges - nächstes ⏩

Jan.T

Guten Tag, wie mein Betreff schon sagt, möchte ich bei Access in meiner Tabelle zwei Kombinationsfelder kombinieren, also wenn ich in das obere Feld einen Wert eintrage, soll der dazu passende Wert automatisch in das Feld darunter eingetragen werden. Der Donkarl Link (
http://www.donkarl.com?FAQ4.36) hilft mir nicht, weil ich nicht verstehe wie ich den Code dort verändern muss, damit er für meine Tabelle passt.
Meine Felder heißen Kundennummer und Name, die Tabelle mit den Kundennummern und Namen heißt Firma, die Tabelle mit dem Formular heißt Teilnehmer
mfg

DF6GL

Hallo,


Wenn Du wirklich "Tabelle" meinst, dann vergiss das und baue Kombifelder in ein Formular ein.
Die Kombifelder (Nachschlagefelder) in der Tabelle wirfst Du heraus.


Dann klappt das auch mit Donkarl...
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

Jan.T

Ich bin absoluter Anfänger und habe keine Ahnung wie man den Code von Donkarl umwandelt, damit er für mich funktioniert.
Ich habe Kombinationsfelder in meinem Formular und möchte ja jetzt durch eintragung der Kundennummer im Oberen Feld, automatisch den Namen im unteren Feld eingetragen haben

Maxel

Viele Grüße
Maxel

Jan.T

Ich würde meine Datenbank anhängen, darf Sie aber nicht als 2003 Version Speichern, wenn ich die Felder lösche durch die es blockiert wird, sind in der 2003 Datei keine Formulare mehr enthalten und meine 2016 Version darf ich so nicht anhängen

Edit: Jetzt gehts.

Jan.T

ok update: Ich habe auf vielen Seiten gesehen das man es mit dem Code Me.Textfeld = Me.Kombinationsfeld.Column(x) machen kann, x ist hier ja, die Spalte des Wertes(?) in meinem Fall 0, aber wenn ich das Anwende, sagt mir Access das Me nicht gefunden werden kann

Beaker s.a.

Hallo Jan,
Habe mir deine DB mal angesehen; - so wird das auf lange Sicht nichts Ordentliches.
Schlüsselfelder mit dem Datentyp "String" (Text) sind ungeeignet. Ebenso die darauf
eingerichteten Beziehungen. Anbei ein schnell zusammen geklicktes Beispiel. Schaue
dir zuerst das Beziehungsfenster an. Da gibt es jetzt eine vierte Tabelle, da ein TN ja
mehrere Kurse besuchen und ein Kurs von mehreren TN besucht werden kann.
Ich musste allerdings deine Testdaten für den Umbau komplett löschen. Es gibt daher
nur jeweils 2 DS in den Tabellen. Die neue Tabelle ist leer und kann über das Form
"frmTeilnehmer" bzw. das eingebette UFo gefüllt werden. Wenn du die Zusammenhänge
soweit verstanden hast, kannst du die Fremdschlüsselfelder im UFo (ausser das Kombi
mit der KursID_F) ausblenden (Sichtbar = Nein).
Zusätzlich musst du noch allen Steuerelemente vernünftigen Namen geben; - die Mühe
habe ich mir nicht gemacht.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Jan.T

#7
Ich habe noch eine letzte Frage die nichts mit meinem Thread zutun hat, was bedeutet in dieser Codezeile das ' ich finde dazu leider nichts im Internet.

strFilter = "Nr_ LIKE ' " & Me!Text0 & "'"

Ich kenn das nur das man mit einem Apostroph etwas vom Code auskommentiert, aber wenn ich in diesem Fall das Apostroph entferne, funktioniert es nicht mehr

DF6GL

Hallo,

das Hochkomma ist das String-Begrenzungszeichen innerhalb eines Textes (String)  im VBA-Code als Ersatz für das (doppelte) Anführungszeichen:

ZitatstrFilter = "Nr_ LIKE  '" & Me!Text0 & "'"   ' <--dieses Hochkomma ist nicht innerhalb eines Textes und ist deshalb das Kommentarzeichen



Man könnte auch so schreiben:

ZitatstrFilter = "Nr_ LIKE """ & Me!Text0 & """"

Um ein Anführungszeichen innerhalb eines Textes(String) zu erhalten, muss dieses verdoppelt werden.




ZitatstrFilter = "Nr_ LIKE ' " & Me!Text0 & "'"

Mit dem Blank (rot)  muss Du vorsichtig sein, es würde an dieser Stelle ein Leerzeichen im vergleichenden Text bedeuten:

Nr_ LIKE " ABC9876"
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

Jan.T


Danke für die Hilfe!
Schönen Rest der Woche wünsche ich

Beaker s.a.

Wobei ein LIKE ohne Joker das gleiche bewirkt wie ein "=".
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)