Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Mehrfachauswahl bei selbsterstelltem Listenfeld
zurück: wenn wert in kombifeld - übertrage auf textfeld 1:n-bez. weiter: Registerkarten Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
NoIdea
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Mai 2007, 10:19
Rufname:

Mehrfachauswahl bei selbsterstelltem Listenfeld - Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hallo zusammen,
brauche Eure professionelle Hilfe.

Ich habe ein Listenfeld welches immerwieder neu generiert wird (im VB-Code). Wie kann ich dort eine Mehrfachauswahl ermöglichen?
Dieses Listenfeld erstellt gleich einen Datensatz falls noch keiner besteht, also sollte es gleich mehrere (aus der Mehrfachauswahl) erstellen können.
Ich weiss nicht wie ich das machen soll...

Dankender Gruss
NoIdea

Hier mal der Code vom Listenfeld:
Code:
Public Sub fillListMonth()
    Dim strDone As String
    'Dim strProv As String
    Dim bMonth  As Byte
    Dim strList As String
   
    'Listenfeld füllen
    'alle Monate in Schleife durchlaufen
    For bMonth = 1 To 12
        With DBEngine(0)(0).OpenRecordset( _
                            "SELECT Count(*), First(Status) " & _
                              "FROM tblPeriode AS T1 " & _
                                   "INNER JOIN tblBewertung AS T2 " & _
                                   "ON T1.PeriodeID = T2.PeriodeIDFS " & _
                             "WHERE Jahr=" & Me!txtYear & " " & _
                               "AND Monat=" & bMonth & " " & _
                               "AND LehrlingIDFS=" & Me!LehrlingID)
            strDone = IIf(.Fields(0) = 0 Or .Fields(1) = 0, "offen", _
                      IIf(Nz(.Fields(1), 1) = 1, "provisorisch", "definitiv"))
            'strProv = IIf(Nz(.Fields(1), False), "Prov", "")
        End With
        strList = strList & ";" & bMonth & ";" & MonthName(bMonth) & ";" & _
                  strDone '& ";" & strProv
                  'IIf(DBEngine(0)(0).OpenRecordset( _
                        "SELECT Count(*) " & _
                          "FROM tblPeriode ASs T1 " & _
                               "INNER JOIN tblBewertung AS T2 " & _
                               "ON T1.PeriodeID = T2.PeriodeIDFS " & _
                         "WHERE Jahr=" & Me!txtYear & " " & _
                           "AND Monat=" & bMonth & " " & _
                           "AND LehrlingIDFS=" & Me!LehrlingID, _
                                dbOpenForwardOnly)(0) = 0, "offen", _
                      "____fertig")
    Next bMonth
    Me!lstMonth.RowSource = Mid(strList, 2)        'Datensatzherkunft zuweisen
    If Me!lstMonth.ItemsSelected.Count = 0 Then _
        Me!lstMonth = Me!lstMonth.ItemData(0)         'Wenn kein Listeneintrag
                                               'markiert, den ersten markieren
    'Ufo filtern
    Me!ufrmBewertung.Form.filter = "Jahr=" & Me!txtYear & _
                              " AND Monat=" & Me!lstMonth.Column(0)
    Me!ufrmBewertung.Form.FilterOn = True
    'Anfügen nur zulassen, wenn kein DS enthalten
    Me!ufrmBewertung.Form.AllowAdditions = _
                               Me!ufrmBewertung.Form.Recordset.RecordCount = 0
End Sub
Gast



Verfasst am:
23. Mai 2007, 10:37
Rufname:


AW: Mehrfachauswahl bei selbsterstelltem Listenfeld - AW: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Grüsse,

stelle zuerst im Eigenschaften zu Listenfeld das Eingenschaft - Mehrfachauswahl auf Einzeln oder Erweitert (zu mehr Info Cursor in diese Eigenschaft und F1 drucken) . danach schreibst Du eine Rutine, die in eine Schleife alle Einträge in Listenfeld durchläuft und selectierte in eine temporare Tabelle abspeichert.

hier vereinfacht die Rutine
Code:
    DoCmd.RunSQL "DELETE FROMtemp_tabelle" ' zuerst temporare tabelle saubern
    For i = 1 To Me!listenfeld.Count
        If Me!listenfeld(i).Selected = True Then
            DoCmd.RunSQL "hier mit Anfügeabfrage neues DS mit  " & _
                         "Schlüsselwert aus Listenfeld in temporare " & _
                         "tabelle anfügen"
        End If
    Next i
nach Durchlauf der Schleife hast du in temporare tabelle alle selectierte werte, mit diesen dann kannst Du weiter dein Vorhaben realisieren.

Chao Fedor
NoIdea
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Mai 2007, 14:07
Rufname:

AW: Mehrfachauswahl bei selbsterstelltem Listenfeld - AW: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hallo
danke für die schnelle Antwort.

Diese temp_tabelle muss ich vorher erstellen, oder? Welche Felder gehören dort rein?

Gruss
Willi Wipp
Moderator


Verfasst am:
23. Mai 2007, 14:19
Rufname:
Wohnort: Raum Wiesbaden

Re: Mehrfachauswahl bei selbsterstelltem Listenfeld - Re: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hi NoIdea,

ich bin nicht sicher das Du die temporaere Tabelle ueberhaupt benoetigst.
Code:
    Dim varItem As Variant
    Dim ctl     As Control
   
    Set ctl = Me!LstProjekte
    For Each varItem In ctl.ItemsSelected
        Debug.Print ctl.ItemData(varItem)
    Next varItem
Mir ist nicht ganz klar was Du eigentlich erreichen willst?
Geht es nur um die Erstellungs des Filters?
Dann koenntest Du den String in der Schleife mit einer OR Verknuepfung der Bedingungen erstellen.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
NoIdea
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Mai 2007, 14:35
Rufname:

AW: Mehrfachauswahl bei selbsterstelltem Listenfeld - AW: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hallo Willi Wipp

Ich möchte dem Benutzer ermöglichen mehrere Listeneinträge (Monate) auszuwählen. Nach der Auswahl erscheint unten ein leeres Ufo und dort kann man verschiedene Felder ausfüllen (Mitarbeiter bewerten). Nun soll diese Bewertung mit all den ausgewählten Monaten (Listeneinträge) in die Quelltabelle (der Monate) verknüpft werden (bzw. die ID dorthin kopiert werden).

Kompliziert zu erklären Very Happy

Deinen Code verstehe ich aber nicht ganz was da passiert... Könntest du ihn evtl. noch kommentieren?

Vielen Dank
Gruss
NoIdea
Willi Wipp
Moderator


Verfasst am:
23. Mai 2007, 14:45
Rufname:
Wohnort: Raum Wiesbaden

Re: Mehrfachauswahl bei selbsterstelltem Listenfeld - Re: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hi NoIdea,

also moechtest Du im Prinzip den Filter fuer das Unterformular setzen in Abhaengigkeit der gewaehlten Monate.
Das sollte etwa so funktionieren (vorrausgesetzt die entsprechenden DS existieren bereits)
Code:
    Dim varItem     As Variant
    Dim ctl         As Control
    Dim strWHERE    As String
   
    ' ...
    Set ctl = Me!lstMonth         'Zuweisung des entsprechenden Steuerelements
    For Each varItem In ctl.ItemsSelected          'Fuer alle ausgewaehlten DS
        strWHERE = strWHERE & " OR Monat=" & ctl.ItemData(varItem)
'        Debug.Print ctl.ItemData(varItem)   'Ausgabe im Direktfenster (Strg+G)
    Next varItem
    If strWHERE <> "" Then                   'Mindestens ein Monat ausgewaehlt
        strWHERE = "(" & Mid$(strWHERE, 5) & ") AND "
                         '^^^^ 1. OR abschneiden
    End If
    strWHERE = strWHERE & "Jahr=" & Me!txtYear
    Me!ufrmBewertung.Form.filter = strWHERE

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
NoIdea
Im Profil kannst Du frei den Rang ändern


Verfasst am:
29. Mai 2007, 08:40
Rufname:


AW: Mehrfachauswahl bei selbsterstelltem Listenfeld - AW: Mehrfachauswahl bei selbsterstelltem Listenfeld

Nach oben
       Version: Office XP (2002)

Hallo,

vielen Dank für deine Hilfe.

Werde das Mal versuchen umzusetzen. Und sonst meld ich mich wieder Very Happy

Gruss
{Siehe auch Alle Monate standardmässig pro Jahr Edit by Willi Wipp}
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Voneinander Abhängige Kombinationsfelder mit Mehrfachauswahl 3 Xia0 2467 20. Nov 2009, 14:44
MissPh! Voneinander Abhängige Kombinationsfelder mit Mehrfachauswahl
Keine neuen Beiträge Access Tabellen & Abfragen: Mehrfachauswahl von Datensätzen 0 Sluyter 219 01. Okt 2009, 10:10
Sluyter Mehrfachauswahl von Datensätzen
Keine neuen Beiträge Access Tabellen & Abfragen: Verknüpfung Tabellen / Feld mit Mehrfachauswahl 2 PeterD 305 10. Sep 2009, 16:34
PeterD Verknüpfung Tabellen / Feld mit Mehrfachauswahl
Keine neuen Beiträge Access Tabellen & Abfragen: Mehrfachselektion bei Abfrage+Listenfeld im Formular 16 rantz 2443 15. Nov 2008, 20:27
Willi Wipp Mehrfachselektion bei Abfrage+Listenfeld im Formular
Keine neuen Beiträge Access Tabellen & Abfragen: überschrift in listenfeld mit daten aus eine abfrage 4 lucky0815 2949 15. Okt 2008, 16:15
lucky0815 überschrift in listenfeld mit daten aus eine abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler bei Übertrag in Listenfeld 1 Gast 511 01. Okt 2008, 22:20
MiLie Laufzeitfehler bei Übertrag in Listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragen nach letztem Datum erstellen mit Listenfeld ? 19 Topotec 1324 25. Sep 2008, 13:36
Topotec Abfragen nach letztem Datum erstellen mit Listenfeld ?
Keine neuen Beiträge Access Tabellen & Abfragen: checkbox umwandeln in Listenfeld 1 lucie_skywalker 520 03. Jun 2008, 15:18
MAPWARE checkbox umwandeln in Listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: Listenfeld leeren 4 moresignthentyps 2240 20. Feb 2008, 17:23
Nouba Listenfeld leeren
Keine neuen Beiträge Access Tabellen & Abfragen: Summe von den Optionen im Listenfeld 4 Disastro 491 22. Jan 2008, 08:08
jens05 Summe von den Optionen im Listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: requery listenfeld 6 max112 1228 02. Dez 2007, 22:46
KlausMz requery listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage in einem Listenfeld ausgeben! 3 Kyale 514 21. Aug 2007, 17:30
rita2008 Abfrage in einem Listenfeld ausgeben!
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Web Editor Forum