Copier résultat d'une sélection multiple listbox dans une table

Le
access13090
Bonsoir à tous,

J'ai créé un formulaire simple relié à une table.
L'un des contrôles de ce formulaire est une zone de liste (listbox)
contenant des valeurs (liste de valeurs). J'ai modifié la propriété
sélection multiple en mode simple.
J'ai cherché dans l'aide d'access la possibilité de pouvoir copier
dans le champ de la table le résultat de l sélection multiple. Sans
succès, malheureusement.

Quelqu'un pourrait-t-il m'indiquer comment faire pour réaliser cette
manipulation ?

Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien
Le #6361971
Bonsoir à tous,

J'ai créé un formulaire simple relié à une table.
L'un des contrôles de ce formulaire est une zone de liste (listbox)
contenant des valeurs (liste de valeurs). J'ai modifié la propriété
sélection multiple en mode simple.
J'ai cherché dans l'aide d'access la possibilité de pouvoir copier
dans le champ de la table le résultat de l sélection multiple. Sans
succès, malheureusement.

Quelqu'un pourrait-t-il m'indiquer comment faire pour réaliser cette
manipulation ?

Merci d'avance
Bonjour

Avec un zeste de Vba.
Pour stocker les éléments séléctionnés sous forme de chaine dans un
champ de la table appellé lechamps. Les éléments sont séparés par des ; .

Dim I as Integer
For i = 0 to me.liste0.listcount
If Me.liste0.selected(I) then me.lechamps=me.lechamps &
me.liste0.column(0,i) & ";"
next i

@+

Pour réattribuer a la liste les valeurs séléctionnées précédement
Dim i as Integer
For i =0 to me.liste0.listcount
Me.liste0.selected(I) = false ' valeur par défaut
If Instr(1,me.liste0.column(0,I),me.lechamps)>0 then
Me.liste0.selected(I) = True
Next I

access13090
Le #6361951
Bonsoir,
Merci pour cette réponse.
Malheureusement je ne maîtrise pas le vba !
Pourriez-vous m'indiquer où placer cette instruction ? Dans la fenêtre
de projet du formulaire ?
Me suffit-il de copier l'instruction en l'état ?

Merci d'avance

Bonjour
Avec un zeste de Vba.
Pour stocker les éléments séléctionnés sous forme de chaine dans un
champ de la table appellé lechamps. Les éléments sont séparés pa r des ; .

Dim I as Integer
For i = 0 to me.liste0.listcount
If Me.liste0.selected(I) then me.lechamps=me.lechamps &
me.liste0.column(0,i) & ";"
next i

@+

Pour réattribuer a la liste les valeurs séléctionnées précédem ent
Dim i as Integer
For i =0 to me.liste0.listcount
Me.liste0.selected(I) = false ' valeur par défaut
If Instr(1,me.liste0.column(0,I),me.lechamps)>0 then
Me.liste0.selected(I) = True
Next I


Fabien
Le #6361941
Bonsoir,
Merci pour cette réponse.
Malheureusement je ne maîtrise pas le vba !
Pourriez-vous m'indiquer où placer cette instruction ? Dans la fenêtre
de projet du formulaire ?
Me suffit-il de copier l'instruction en l'état ?

Merci d'avance

Bonjour
Avec un zeste de Vba.
Pour stocker les éléments séléctionnés sous forme de chaine dans un
champ de la table appellé lechamps. Les éléments sont séparés par des ; .

Dim I as Integer
For i = 0 to me.liste0.listcount
If Me.liste0.selected(I) then me.lechamps=me.lechamps &
me.liste0.column(0,i) & ";"
next i

@+

Pour réattribuer a la liste les valeurs séléctionnées précédement
Dim i as Integer
For i =0 to me.liste0.listcount
Me.liste0.selected(I) = false ' valeur par défaut
If Instr(1,me.liste0.column(0,I),me.lechamps)>0 then
Me.liste0.selected(I) = True
Next I


Tu peux mettre la premiére partie du code sur l'événement aprés mise a

jour de ta liste0 (si elle s'appelle comme celà)

Sub Liste0_afterUpdate()
Dim I as Integer
For i = 0 to me.liste0.listcount
If Me.liste0.selected(I) then me.lechamps=me.lechamps &
me.liste0.column(0,i) & ";"
next i
end sub


Et la seconde partie du code sur l'évenement sur activation du formulaire
Sub Form_Current()
Dim i as Integer
For i =0 to me.liste0.listcount
Me.liste0.selected(I) = false ' valeur par défaut
If Instr(1,me.liste0.column(0,I),me.lechamps)>0 then
Me.liste0.selected(I) = True
Next I
End sub



Ci joint une petite base avec un formulaire formulaire1 qui contient un
exemple.
http://cjoint.com/?cvrjlRIIH0
Bon Week


access13090
Le #6361891
Bonjour,
Un grand merci pour la base de données exemple
Cordialement

Tu peux mettre la premiére partie du code sur l'événement aprés mi se a
jour de ta liste0 (si elle s'appelle comme celà)

Sub Liste0_afterUpdate()
Dim I as Integer
For i = 0 to me.liste0.listcount
If Me.liste0.selected(I) then me.lechamps=me.lechamps &
me.liste0.column(0,i) & ";"
next i
end sub


Et la seconde partie du code sur l'évenement sur activation du formulair e
Sub Form_Current()
Dim i as Integer
For i =0 to me.liste0.listcount
Me.liste0.selected(I) = false ' valeur par défaut
If Instr(1,me.liste0.column(0,I),me.lechamps)>0 then
Me.liste0.selected(I) = True
Next I
End sub



Ci joint une petite base avec un formulaire formulaire1 qui contient un
exemple.
http://cjoint.com/?cvrjlRIIH0
Bon Week




Publicité
Poster une réponse
Anonyme