XL 2016 Données contenu dans une ListBox à remettre dans TxtBox lors d'un clic

SebFox

XLDnaute Nouveau
Si vous avez des exemple, je bloque complètement sur ce sujet, il est vrai que j'ai encore beaucoup de mal avec les boucles Next, ...

Merci beaucoup ;)
 

Calvus

XLDnaute Barbatruc
Bonjour @SebFox et bienvenue sur le forum, le forum,

Plus vague comme question, c'est dur...
Des exemples il y en a plein ici, mais il faudrait savoir ce que tu veux exactement.
Alors une recherche te donnera certainement des résultats, sinon l'envoi d'un fichier pour t'aider.

En attendant, voici un exemple, mais ça ne vaudra rien sans fichier...
VB:
Private Sub ListBox1_Click()                                'Attribution des noms des étiquettes
Dim k As Single, valeur As Range, f As Worksheet, ville As Range, cel As Variant
    On Error Resume Next
    Set f = Sheets("Clients")
If OptionButton1 Then
    Set valeur = f.Range("B:B").Find(Me.ComboBox1, Lookat:=xlWhole)
Else
    Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(1), Lookat:=xlWhole)
        If valeur Is Nothing Then
            Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(0), Lookat:=xlWhole)
        End If
            If valeur Is Nothing Then
                Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(2), Lookat:=xlWhole)
            End If
End If

If valeur Is Nothing Then
    Set f = Sheets("Prospects")
        If OptionButton1 Then   'Bouton Société
            Set valeur = f.Range("B:B").Find(Me.ComboBox1, Lookat:=xlWhole)
        Else
        Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(1), Lookat:=xlWhole)
        End If
            If valeur Is Nothing Then
                Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(0), Lookat:=xlWhole)
            End If
                If valeur Is Nothing Then
                    Set valeur = f.Range("B:B").Find(Me.ListBox1.Column(2), Lookat:=xlWhole)
                End If
End If


For Each cel In [Donnees].Columns(2).SpecialCells(xlVisible)
        If OptionButton1 Then
            Set ville = f.Range("B:B").Find(Me.ComboBox1, Lookat:=xlWhole).Offset(, 9)
        Else
            Set ville = f.Range("B:B").Find(Me.ListBox1.Column(0), Lookat:=xlWhole).Offset(, 9)
            Set ville = f.Range("B:B").Find(Me.ListBox1.Column(1), Lookat:=xlWhole).Offset(, 9)
            Set ville = f.Range("B:B").Find(Me.ListBox1.Column(2), Lookat:=xlWhole).Offset(, 9)
        End If
            For k = 6 To 8
                Me("Label" & k) = valeur.Offset(, k - 6)
            Next k
                For k = 9 To 12
                    Me("Label" & k) = valeur.Offset(, k - 5)
                Next k
        For k = 19 To 19
            Me("Label" & k) = ville
        Next k
Next cel
End Sub

A+

EDIT : Hello @Staple my friend !!! :):):)
 

Staple1600

XLDnaute Barbatruc
Bonjour Calvus

Je plussoie
C'est mieux quand il y a petit fichier fourni dès le départ par le demandeur ;)
(sans oublier le pt'tit Bonjour qui va bien ;))

• Ça me permet d'économiser un peu de temps pour mon compteur Fainéantise ;)
et de pencher fortement vers le concept du slow movement ;) )
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

Ah, j'ai retrouvé SebFox (et le petit Bonjour ;)

Manque plus que le fichier... ou pas ;)
 

Statistiques des forums

Discussions
312 160
Messages
2 085 840
Membres
103 001
dernier inscrit
vivinator