Microsoft 365 Remonter datas dans texbox sous condition

gilles37

XLDnaute Occasionnel
Bonjour le forum

Je souhaite renseigner texbox en fonction d une condition qui est la valeur qui se trouve dans label.( nom de la personne)
Les datas sont dans un tableau (feuil1)
Colonne A nom des Personnes
Colonne B et C les donnees a remonter dans textbox de l userform2.

Avez vous un exemple? J aimerai comprendre le processus

Merci a vous
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Gilles,
Plutôt que de travailler dans le vide, et finalement faire un exemple que vous devrez entièrement reprendre, fournissez un petit fichier test avec au moins l'organisation des données en colonnes A et B.
"A" contient les noms, ça semble simple, mais comment alimenter la textbox ? avec quelles données de la colonne "B" ? sur quel filtre du nom choisi on lit les données de "B" ?
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Un essai en PJ avec :
VB:
Private Sub CommandButton1_Click()
    Dim NomEntré$, Chaine$, Ligne%
    NomEntré = UserForm2.TextBoxNom
    With Sheets("BDD")
        For Ligne = 1 To .Range("A65500").End(xlUp).Row
            If LCase(.Cells(Ligne, "A")) = LCase(NomEntré) Then
                Chaine = Chaine & "Du  " & .Cells(Ligne, "B") & "  au   " & .Cells(Ligne, "C") & Chr(13)
            End If
        Next Ligne
    End With
    UserForm2.Astreintes = Chaine
End Sub
et le lancement userform avec :
Code:
Sub bouton2()
    With UserForm2
        .TextBoxNom = ""
        .Astreintes = ""
        .Show
    End With
End Sub
 

Pièces jointes

  • Astreintes 2022(1) (1) (2).xlsm
    32.5 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Une PJ plus abouti, la liste des noms est automatique, sans doublons, et dans l'ordre alphabétique. Avec :
VB:
Sub bouton2()
    Dim i%, DL%, tablo
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Columns("A:A").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Columns("A:A").Select
    DL = Sheets("BDD").Range("A65500").End(xlUp).Row
    Range("A1:A" & DL - 3) = Sheets("BDD").Range("A3:A" & DL).Value
    DL = Range("A65500").End(xlUp).Row
    ActiveSheet.Range("$A$1:$A$" & DL).RemoveDuplicates Columns:=1, Header:=xlNo
    ActiveSheet.Sort.SortFields.Clear
    ActiveSheet.Sort.SortFields.Add Key:=Range("A1:A7"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveSheet.Sort
        .SetRange Range("A1:A" & DL)
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    DL = Range("A65500").End(xlUp).Row
    tablo = Range("$A$1:$A$" & DL)
    Selection.Copy
    Columns("A:A").Delete Shift:=xlToLeft
    With UserForm2
        .ComboBoxNoms.List = tablo
        .Astreintes = ""
        .Show
    End With
    [A1].Select
    Application.EnableEvents = True
End Sub
Attention, certaines macro d'initialisation, qui devenaient redondantes, ont été inhibées.
 

Pièces jointes

  • Astreintes 2022(1) (4).xlsm
    37.7 KB · Affichages: 2

Discussions similaires

Réponses
15
Affichages
771
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 215
Messages
2 086 331
Membres
103 188
dernier inscrit
evebar