PDA

Vollständige Version anzeigen : Bedingte Ausgabe nach Auswahl im Formular


charly20
07.07.2006, 09:55
Morgen liebe Leutz,
ich habe das letzte mal vor Jahren mit Access gearbeitet und fange wieder beiNull an..

Ich habe ein Unter-Formular. In diesem Formular kann ich über ein Listenfeld Werte auswählen.

Nun wollte ich unter "nach Aktualisieren" einen Code einfügen welcher mir ermöglicht mehrer Daten, welche in der gleichen Tabelle liegen, in dem Unter-Formular anzeigen zu lassen (ohne sie verändern zu können)

Zum Aufbau :
Auftrag_form und Auftrag_unter_form sind die beiden Formulare
Die beiden Tabellen heißen Auftrag und Material_fuer_Verrechnung

In dem Listenfeld bekomme ich meine Daten über : SELECT Material_fuer_Verrechnung.Leistungsart FROM Material_fuer_Verrechnung;

Jetzt möchte ich gerne im Formularfeld "Beschreibung" den Text einblenden, welcher in der Tabelle "Material_fuer_Verrechnung" unter "Beschreibung" hinterlegt ist.

Könnte mir hierzu irgendjemand einen VBA Code basteln?

Dim RS As Recordset
Set RS = Me.Recordset.Clone
RS.FindFirst "Leistungsart" = Me!Leistungsart

RS.Close
End Sub

J_Eilers
07.07.2006, 10:08
Hi,

meinst du so etwas wie im Link 'Abhängigkeiten' in meiner Signatur umgesetzt wurde? Oder willst du nur einen Wert des Listenfeldes ausgeben?

charly20
07.07.2006, 10:24
Also den Wert im Listenfeld kann ich auswählen.
Ich will nun, damit der User weiß was er ausgewählt hat, noch den Beschreibungstext im Formular anzeigen lassen.

Ich habe eine Formel von dir genommen, und diese in das Feld worin die Erklärung/Beschreibung erscheien soll "auf Mausklick ab" gesetzt. Leider funktiioniert sie nicht irgendwo hab ich wohl oder übel einen Denkfehler...

SELECT Material_fuer_Verrechnung.Leistungsart, Material_fuer_Verrechnung.Beschreibung FROM Material_fuer_Verrechnung WHERE ((Material_fuer_Verrechnung.Leistungsart)=[Formulare]![Auftrag_form_erf]![Auftrag_unter_form_erf]![Leistungsart]));

J_Eilers
07.07.2006, 10:29
Wenn nur ein Wert ausgegeben werden soll, dann nimm einfach folgenden Steuerelementinhalt in dem Ausgabefeld =Listenfeld.Column(x). Wobei x durch die Spaltenzahl - 1 zu ersetzen ist, in der der Wert steht.

charly20
07.07.2006, 11:21
Geht nicht..

Mein Listenfeld hat als DS Herkunft:
SELECT Material_fuer_Verrechnung.Leistungsart, Material_fuer_Verrechnung.Beschreibung FROM Material_fuer_Verrechnung;

und selbst wenn ich
SELECT Material_fuer_Verrechnung.Leistungsart, Material_fuer_Verrechnung.Beschreibung, Material_fuer_Verrechnung.Beschreibung FROM Material_fuer_Verrechnung;

nehme funktioniert das " =Leistungsart.Column(1) " nicht. Ganz neben bei verändert er mir das automatisch zu " =[Leistungsart].[Column](1) "

J_Eilers
07.07.2006, 11:38
Geht nicht ist mal großes Rasentennis. Die Bedeutung der 2 Worte darf ich mir ausmalen? Kann es sein, dass das Listenfeld eine Mehrfachauswahl hat?

charly20
07.07.2006, 14:43
Nein hat es nicht. es kann nur ein Wert gewählt werden. Und geht nicht heißt, ich bekomme keine Fehlermeldung aber ich sehe auch nichts.

J_Eilers
10.07.2006, 06:43
Lade mal bitte ein Minibeispiel hoch.