PDA

Vollständige Version anzeigen : Listenfeld-Auswahl speichern


vhoenn
07.08.2001, 13:39
Hallo Leute,

ich versuche gerade ein Problem mit zwei Listenfeldern zu lösen und stosse auf Widerstand. Wer kann mir helfen?

Vorgang: Ich wähle aus Listenfeld1 Datensätze aus und zeige diese in Listenfeld2 an (das ist erledigt). Nun möchte ich die ausgewählten Werte in einer weiteren Tabelle speichern.

Vielen Dank für die Hilfe.

------------------
vw

A.S.
07.08.2001, 15:29
Hallo Veronika,

Du mußt dafür die Elemente des Listenfeldes runterlaufen:


Dim lngCounter As Long, lngStart As Long
If Me.Listenfeld.ListCount > 0 _
Then
If Me.Listenfeld.ColumnHeads _
Then
lngStart = 1
Else
lngStart = 0
End If
For lngCount = lngStart To Me.Listenfeld.ListCount - 1
' Hier die Werte in den Recordset schreiben und speichern
Next lngCount
Endif


Natürlich mußt Du vorher einen entsprechenden Recordset geöffnet haben.

Wenn das Listenfeld auch noch mehrere Spalten hat - woran ich wie ich Dich verstanden habe aber nicht glaube - mußt Du zum Auslesen der Werte noch eine Schleife über die Columns legen.

Gruß

Arno

Stema
07.08.2001, 15:30
Hallo Veronika,

gib uns mehr Informationen.
Wie stehen die Daten im Listenfeld1? Gebunden an eine Tabelle oder Abfrage?
Wie kommen sie in Listenfeld2? Sind sie dort gebunden oder als Werteliste vorhanden?

vhoenn
07.08.2001, 17:30
Hallo Arno,

zunächst vielen Dank für die Hilfestellung. Dein Code funktioniert prima. Die ausgewählten Listeneinträge werden in der Tabelle gespeichert. Jetzt habe ich noch eine weitere Frage dazu. Das genannte Listenfeld befindet sich in einem Formular mit drei Textfeldern. Ich möchte nun in diese Textfelder Werte eingeben und diese sollen zu den ausgewählten Listeneinträgen in die Tabellen gespeichert werden. Soll heissen, drei Werte sind gültig für jeden ausgewählten Listwert und sollen mit diesem gemeinsam einen Datensatz bilden. Ich hoffe, das ist verständlich.

Kannst du mir hier auch weiter helfen?

Vielen Dank an dich.

Gruss Veronika

An dieser Stelle auch meinen Dank an Stema.

------------------
vw

A.S.
07.08.2001, 17:39
Hallo Veronika,

möchtest Du bei der Selektion und der Transferierung in das 2. Listenfeld zusätzliche Daten mit angeben, oder sind die 3 eingegebenen Daten generell für alle Einträge des 2ten Listenfeldes gültig und sollen in die Zieltabelle des 2ten Listenfeldes geschrieben werden?

Gruß

Arno

vhoenn
07.08.2001, 18:20
Hallo Arno,

die Einträge sollen für alle gewählten Einträge gleich sein.

Gruss Veronika

------------------
vw

A.S.
07.08.2001, 22:09
Hallo Veronika,

na, dann mußt Du doch nur den Recordset um 3 Spalten erweitern und diesen 3 Spalten an der gleichen Stelle wo die Daten aus dem 2ten Listenfeld gespeichert werden die 3 ungebundenen Steuerelemente zuweisen ;)

RS("FeldA") = Me.Listenfeld.....
RS("FeldB") = Me.Steuerelement1.Value
RS("FeldC") = Me.Steuerelement2.Value
RS("FeldD") = Me.Steuerelement3.Value

Gruß

Arno

vhoenn
08.08.2001, 11:48
Hallo Arno,
ich muss dich nochmal löchern, aber ich krieg´das einfach nicht hin. Hab´ mich wohl total verrannt. Nach einigen Änderungen möchte ich folgendes erreichen:

Selektierte Namen im Listenfeld2 und aus ComboBox gewählte Zahl (zunächst gültig für alle Namen) sollen gemeinsam in eine Tabelle geschrieben werden. Beispiel:

tblPersonen

Namen Zahl
________________________
Müller 25
Meier 25
Schulze 25

Idealerweise sollte die Zahl für jeden Namen individuell gewählt werden können. Aber mit der ersten Lösung wäre ich schon zufrieden.

Kannst du mir bitte den Code einschl. Aufbau des Recordsets geben. Ich kriege zur Zeit keinen Durchblick.

Ich danke dir sehr dafür.

Gruss Veronika

------------------
vw

A.S.
08.08.2001, 15:27
Hallo Veronika,

kannst Du mir mal bitte Deine EMail zukommen lassen (Brief-Icon)?

Gruß

Arno

PS Keine Angst, die Lösung wird veröffentlicht ;)