Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Neue DS anlegen anhand von Auswahl im Listenfeld

Begonnen von Juno, November 01, 2010, 10:15:42

⏪ vorheriges - nächstes ⏩

Juno

Ich habe ein Feld in einem Formular "Vk_vorlagedispo". Daneben habe ich einen Button mit dem sich ein Suchformular öffnet.
In dem Suchformular habe ich ein Listenfeld mit mehrfach-Auswahl. Wenn ich dann ein paar DS ausgewählt habe kann ich auf übernehmen klicken und damit werden die Primärschlüsseld der Datensätze in das Feld eingetragen.

Hier mein Code:
Private Sub uebernehmen_Click()

    Dim varPosition As Variant
    Dim str As String
' Geht jedes angeklickte Element durch und speichert es in einem String
    For Each varPosition In Me!Liste0.ItemsSelected
        str = str & Me!Liste0.ItemData(varPosition) & ", "
    Next varPosition
    If str = "" Then
    MsgBox "Bitte wählen Sie einen Datensatz aus!"
    Exit Sub
    Else

    Forms!vkobjekte!vk_vorlagedispo = str
    Call Forms("vkobjekte").vk_vorlagedispo_AfterUpdate
           
    End If
   
' Schließen des Formulars
    DoCmd.Close acForm, "auswahl_vorlagedispo"

End Sub


Jetzt möchte ich aber, dass zusätzelich für jeden ausgewählten DS in einer anderen Tabelle ein neuer DS angelegt wird. Wie kann ich das machen?

DF6GL

Hallo,

und was soll in diesen neuen DS drinstehen?


prinzipiell halt so:

Dim db As Database
Set db = currentdb
.
.
.
    For Each varPosition In Me!Liste0.ItemsSelected
       str = str & Me!Liste0.ItemData(varPosition) & ", "

       db.Execute " Insert into tblAndereTabelle (Textfeldxyz)   Values ('" & Me!Liste0.ItemData(varPosition) & "')"

    Next varPosition
.
.

Juno

Zieltabelle heißt "vk_det"
Felder in der Tabelle: "det_nr", "vk_nr"

Primärschlüssel aus Suchformular: "vk_nr"

Die Zieltabelle ist für eine m:n Beziehung.
Ich habe also z.B. in Tabelle "vkobjekte" einen Datensatz 20090001. Zu diesem Datensatz gibt es in der Tabelle "Details" 2 Datensätze.
Also habe ich folgende Datensätze in vk_det:
20009001;1
20090001;2

Wenn ich jetzt im Suchformular den DS 20090001 auswähle soll folgendes passieren:
vk_det:
20090001;1
20090001;2
20090002;1
20009002;2

Es sollen also alle "details" des ausgewählten Datensatzes auch einem neuen vkobjekt zugeordnet werden.

Ich hoffe, dass ist so verständlich...