Ich habe mal eine Frage, wie man das am einfachsten machen sollte.
* Ich habe eine Listbox, die auf einer abfListbox basiert
* abfListbox hat die Felder [ID], [Beschreibung], [Text]
* Die Listbox entnimmt die Felder [ID] (gebunden), [Beschreibung]
* In einem Textfeld soll der Inhalt von [Text] angezeigt werden, und zwar für die ID, die in der Listbox gewählt wurde. Wie sollte man das machen?
Carl
Hallo,
am Besten und am Einfachsten wenn Du die Tabelle der Listbox in die Abfrage für das Formular mit dazu nimmst, dann hast Du auch das Feld Text zur Anzeige zur Verfügung.
PS:
Text ist ein ungeeigneter Feldname, da das auch eine gleichnamige Eigenschaft eines Feld ist.
Bitte unbedingt umbenennen.
Danke für Deine Antwort. Ja, ich habe es versucht auf Abfrage-Ebene. Wenn ich die Abfrage öffne und die Tabelle, die der Listbox zugrunde liegt, mit einfüge, wird die Beziehung nicht angezeigt. Obwohl im Beziehungsfenster alles in Ordnung ist.
Wahrscheinlich entsteht das Problem, weil ich die Tabelle der Listbox in der Haupttabelle doppelt verwende. Sie wird zweimal benötigt.
Gibt es für das Textfeld nicht eine Lösung mit dlookup oder so? Wie adressiere ich denn in einer dlookup die ID, die aktuell gewählt wurde?
okay, ich habs formularseitig hinbekommen. Danke.
Was bedeutet denn in einer Abfrage, wenn die Beziehungen in den Tabellen nicht mit den kleinen schwarzen Strichen angezeigt werden, sondern wenn nur eine sehr dünne Linie da ist und bei jeder Tabelle ein kleiner schwarzer Punkt?
Carl
Hallo,
ZitatWas bedeutet ...
das bedeutet, dass keine entsprechende Beziehung im Beziehungsfenster eingestellt ist. Das solltest Du nachholen und dabei auch die fehlende referentielle Integrität einstellen.
Ach so, okay! erledigt
Ich habe mal noch eine frage, ich versuche mit diesem Code ein Formular zu öffnen und eine ID zu übergeben, die in der Liste75 ausgewählt wurde.
If IsNull(Me.Liste75) Then
MsgBox "Bitte einen Probanden wählen."
Exit Sub
Else
DoCmd.OpenForm "frmAuswertung01a", , , "ID=" & ctl.Parent.ID, , acDialog, ctl.Value
DoCmd.Close acForm, "frmAuswertung00", acSaveYes
End If
Der fehler liegt in DoCmd.OpenForm "frmAuswertung01a", , , "ID=" & ctl.Parent.ID, , acDialog, ctl.Value, aber ich finde ihn nicht. Kannst Du ihn erkennen?
Der gewählte Wert in Liste 75 wird nicht gespeichert, sondern nur zur Weitergabe verwendet.
Carl
Hallo,
und was ist hier "ctl" ??
Ich weiß es nicht. Was sollte denn an dessen Stelle stehen?
Hallo,
wo hast Du denn den Code her, man kann doch nicht einfach irgenwas abschreiben und hoffen dass es geht.
ZitatDer fehler liegt...
Was für ein Fehler wird denn gemeldet ?
Du muss Dich doch auch auf das listenfeld beziehen, wenn Du dessen Inhalt verwenden willst.
Was willst Du mit dem acSaveYes ?
Gib mal bitte einen Tipp, wie man das verbessern könnte? Ich hab schon mindestens 50 Varianten durchprobiert.
Ich war vorhin schon so verzweifelt, dass ich fast einen Makro gemacht hätte ...
Carl
Hallo,
versuche es so:
DoCmd.OpenForm "frmAuswertung01a", , , "ID=" & Me.Liste75
DoCmd.Close acForm, "frmAuswertung00"
Uff, Danke! Es geht.
Carl