Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Wie bekomme ich Multiselect im Listenfeld hin?

Begonnen von Monikavento, März 29, 2013, 21:27:08

⏪ vorheriges - nächstes ⏩

Monikavento

Hallo,
ich habe ein Listenfeld mit Mehrfachauswahl.
Ich möchte das meine ausgewählten Felder angezeigt werden.
Ich kann zwar ein oder mehere auswählen, aber es ändert sich nichts im Formular. Dort wird immer nur der erste Datensatz angezeigt, egal welchen ich ausgewählt habe. Mir wurde gesagt, das ich dafür Multiselect nehmen muss. Ich bekomme die Formel nicht hin.
Bin Anfängerin

bahasu

#1
Hi,

mit den folgenden Zeilen wird die Bedingung zusammengesetzt, die Du für ein Filter oder für eine Abfrage einsetzen kannst.
Diese Zeilen stehen im Ereignis "Nach Aktualisierung" von "Deinem_Listenfeld".


   Dim Zeile As Byte
   
   Bedingung= ""

   With Me.Dein_Listenfeld
       For Zeile = 0 To .ListCount - 1
           If .Selected(Zeile) And Nz(.Column(0, Zeile)) > "" Then Bedingung = Bedingung & " or Klasse = '" & .Column(0, Zeile) & "'"
       Next Zeile
   End With

If Nz(Bedingung) > "" then Bedingung = Mid (Bedingung, 5)


Bedingung ist als Public Variable "as String" deklariert.
"Klasse" war in meinem Beispiel das zu filternde Steuerelement.

Harald
Servus

Monikavento

Hallo Harald,
ich versteh nur Bahnhof.
Ich habe ein Listenfeld1 das mir insgesamt 5 Artikel anzeigt.
Muss ich neue Felder erstellen und dann die Ereignisprozzedur eingeben und dort dann den Code?

bahasu

Hi,

ich hatte "Ich kann zwar ein oder mehere auswählen, aber es ändert sich nichts im Formular. Dort wird immer nur der erste Datensatz angezeigt," so verstanden, dass Du in dem Listenfeld ein oder mehrere Teile anklickst, um die ausgewählten Teile als Selektionsbedingung zu verwenden.

Ist dem so?

Wenn ja => Vermutlich geht es schneller, wenn Du Deine Datenbank hier zu Verfügung stellst. In diesem Fall mit einigen Spieldaten, die Datenbank im access2003-Format, komprimiert und gezippt.

Harald

Servus

Monikavento

Hallo,
ist gezippt noch 352 kb groß, kriege es nicht versendet

Monikavento


bahasu

Moin,

Zitat von: Monikavento am März 29, 2013, 22:55:06
ist gezippt noch 352 kb groß, kriege es nicht versendet

Hattest Du die Datenbank komprimiert? Wenn nein, bitte komprimieren.
Sind vielleicht Grafiken(z.B. Logos) drin? Wenn ja, bitte in der zu sendenden Version entfernen.
Sind Berichte drin? Wenn ja, bitte in der zu sendenden Version entfernen.
Sind viele Datensätze vorhanden? Wenn ja, bitte auf wenige begrenzen.

Harald
Servus

bahasu

Moin,

Zitat von: Monikavento am März 29, 2013, 22:12:37
Ich habe ein Listenfeld1 das mir insgesamt 5 Artikel anzeigt.
Muss ich neue Felder erstellen und dann die Ereignisprozzedur eingeben und dort dann den Code?

Neue Felder sind nicht nötig.
Ist der Name vom Listenfeld1 = "Listenfeld1"?
Wie lautet der Name vom Feld, das auf diese Listeneinträge überprüft werden soll? (z.B. "Artikel"?)

Harald
Servus

45457

Wenn ich das richtig verstand möchtest du beim Auswählen, z.B.PLZ bei Kunden die PLZ und den Ort sehen?
Ich habe dass dann so geregelt das ich unter Kunden zum Fremdschlüssel PLZ ging dort Listenfeld wählte und danach unter Datensatzherkunft auf die ... drückte und dann die Tabelle (PLZ/Ort) öffnete und dann beides runterzog(Primärschlüssel unbedingt auch). Dann unter Feld: PLZ&" "&Ort eingab. danach auf Ausführen oben rechts klicken und unter Spaltenzahl anz.Spalten in der Abfrage eintippen und dann unter spaltenbreite die Spalten welche man nicht benötigt auf 0 setzen.
Z.B. spalte 3 die Eingabe welcher man möchte dann 0;0;6 Anz. Spalten 3
Ich hoffe das ist das was du meintest...
Liebe Grüsse 45457