userform de recherche multiselection puis copier coller dans une autre feuille

1 réponse
Avatar
Dominique
Bonjour,

J ai un userform multiselection qui marche bien.
voici les codes qui initialise mes listbox Commune et Demandeur. je
sélectionne une commune dans la listbox : LB_Commune et tous les
demandeurs de cette commune apparaissent dans la listbox multiselection
: LB_Demandeur
Aprés une sélection de un ou plusieurs Demandeurs, Il faudrait que la ou
les sheets("BD"). range ("G:W") contenant le nom du demandeur en
Range(I) soit copié vers la sheets("lievre").range("A"& .End(xlUp).
Et la je coince, donc j'ai mis un petit fichier pour comprendre.
http://www.cijoint.fr/cjlink.php?file=cj200908/cijx2KSV5n.xlsm
Et j ai commencé un code mais bon pas terrible
merci pour votre aide
Private Sub Validez_Click()

Dim DerligLI As Long, DerligBD As Long

Dim X As Integer, y As Integer
Dim LB_Demandeur As Range

DerligLI = Sheets("Lievre").Range("A15 : A65000").End(xlUp).Row 'la
premiere ligne vide de A dans feuil lievre

DerligBD = Sheets("BD").Range("I65536").End(xlUp).Row ' derniere ligne
vide de I dans feil BD

With Sheets("BD") 'avec sheets BD

If LB_Demandeur <> "" Then 'si LB_Demandeur n' est pas vide

'DANS LA COLONNE i DE BD trouve la valeur LB_Demandeur
selectionner dans la listbox
Set LB_Demandeur = .Range("I2:I" & Derlig).Find(LB_Demandeur)

y = 15
'Dans chaque ligne BD en I
For X = 2 To DerligBD
If .Range("A" & X).Value = LB_Demandeur.Offset(o, -2).Value
Then
'copie en sheets lievre derligne libre
Copy Destination:=DerligLI
y = y + 1
End If
Next X
End If

End With

End Sub

merci


http://www.cijoint.fr/cjlink.php?file=cj200908/cijx2KSV5n.xlsm

1 réponse

Avatar
MichDenis
Bonjour Dominique,

Il y a problème avec la publication de ton fichier.
Télécharge le et décompresse le, tu verras !



"Dominique" a écrit dans le message de groupe de discussion :

Bonjour,

J ai un userform multiselection qui marche bien.
voici les codes qui initialise mes listbox Commune et Demandeur. je
sélectionne une commune dans la listbox : LB_Commune et tous les
demandeurs de cette commune apparaissent dans la listbox multiselection
: LB_Demandeur
Aprés une sélection de un ou plusieurs Demandeurs, Il faudrait que la ou
les sheets("BD"). range ("G:W") contenant le nom du demandeur en
Range(I) soit copié vers la sheets("lievre").range("A"& .End(xlUp).
Et la je coince, donc j'ai mis un petit fichier pour comprendre.
http://www.cijoint.fr/cjlink.php?file=cj200908/cijx2KSV5n.xlsm
Et j ai commencé un code mais bon pas terrible
merci pour votre aide
Private Sub Validez_Click()

Dim DerligLI As Long, DerligBD As Long

Dim X As Integer, y As Integer
Dim LB_Demandeur As Range

DerligLI = Sheets("Lievre").Range("A15 : A65000").End(xlUp).Row 'la
premiere ligne vide de A dans feuil lievre

DerligBD = Sheets("BD").Range("I65536").End(xlUp).Row ' derniere ligne
vide de I dans feil BD

With Sheets("BD") 'avec sheets BD

If LB_Demandeur <> "" Then 'si LB_Demandeur n' est pas vide

'DANS LA COLONNE i DE BD trouve la valeur LB_Demandeur
selectionner dans la listbox
Set LB_Demandeur = .Range("I2:I" & Derlig).Find(LB_Demandeur)

y = 15
'Dans chaque ligne BD en I
For X = 2 To DerligBD
If .Range("A" & X).Value = LB_Demandeur.Offset(o, -2).Value
Then
'copie en sheets lievre derligne libre
Copy Destination:ÞrligLI
y = y + 1
End If
Next X
End If

End With

End Sub

merci


http://www.cijoint.fr/cjlink.php?file=cj200908/cijx2KSV5n.xlsm