lister les noms si

magalie

XLDnaute Occasionnel
bonjour à tous et à toutes,
dans le fichier joint,j'aimerai par un bouton
lister tous les noms de la colonne A si le nombre dans la colonne C est supérieur à 2
en clair je veux savoir (dans un combo ou listbox ?) qui dépasse le nombre d'astreinte prévue.
dans l'exemple ceux qui dépassent 2 sont :
alain,françois,hugues et arnaud.
est-il possible d'avoir la liste par ordre alphabétique ?
merci à tous et bonne journée
 

Pièces jointes

  • Classeur111.xlsm
    19.2 KB · Affichages: 54
  • Classeur111.xlsm
    19.2 KB · Affichages: 47
  • Classeur111.xlsm
    19.2 KB · Affichages: 56

fhoest

XLDnaute Accro
Re : lister les noms si

Bonjour Magalie,

Voici le code pour remplir la listbox
Code:
Private Sub userform_initialize()
Dim c As Range
Dim drligne As Long
drligne = Range("A65000").End(xlUp).Row
For Each c In Range("A1:A" & drligne)
If c.Offset(0, 2).Value > 2 Then ListBox1.AddItem c.Text
Next

End Sub
pour le tri tu peux le faire préalablement avec excel avant de lancer la fonction de remplissage
A+
 

magalie

XLDnaute Occasionnel
Re : lister les noms si

bonjour fhoest,parfait, beau travail.
et si j'avais d'autres colonnes avec d'autres chiffres (pour l'exemple c'était la C) et que je veuille en cochant la colonne qui m'intéresse voir la liste des noms ?
je t'ai mis dans le bouton ce que je voudrais
merci
 

Pièces jointes

  • Classeur111.xlsm
    18.4 KB · Affichages: 45
  • Classeur111.xlsm
    18.4 KB · Affichages: 47
  • Classeur111.xlsm
    18.4 KB · Affichages: 51

magalie

XLDnaute Occasionnel
Re : lister les noms si

fhoest à priori il y a un souci
je mets D comme choix de colonne et 2 pour supérieur à 2
je devrais avoir Alain,auguste françois et gilles mais ce n'est pas ça qui est dans la liste ?
après essai lorsque je mets C dans le choix de la colonne j'ai le résultat de la colonne D ily a un décalage
et si je mets une colonne vide B il trouve quand même des noms
 
Dernière édition:

fhoest

XLDnaute Accro
Re : lister les noms si

Alors
le code:
Code:
Private Sub CommandButton1_Click()
Dim c As Range
Dim drligne As Long
Dim colonne As Integer

drligne = Range("A65000").End(xlUp).Row
On Error Resume Next
colonne = Cells(1, TextBox1.Text).Column

ListBox1.Clear
For Each c In Range("A1:A" & drligne)
If c.Offset(0, colonne - 1).Value > CDbl(TextBox2.Value) Then ListBox1.AddItem c.Text
Next

End Sub
remarque si tu choisi la colonne D il y aura des nom car tu as du texte
A+
 

magalie

XLDnaute Occasionnel
Re : lister les noms si

dis moi fhoest si je veux faire une autre fichier dans le même genre que celui ci
en mettant le numéro de colonne D par ex , que au lieu de me mettre ceux qui dépassent 2 que cela compare la colonne demandée par rapport à la colonne situèe immédiatement à droite E, et si le chiffre de la colonne D (demandée au départ) est supérieur au chiffre de la colonne E mettre le nom dans la listbox
que dois-je modifier
j'ai essayé différente modification sans succès
merci de ton aide
je crois que j'ai trouvé
if c.offset(0,colonne-1).value>c.offset(0,colonne-0).value
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
557