VBA - Renseigner un label suivant au moins 2 conditions

criscris11

XLDnaute Accro
Bonsoir à tous,
Dans un formulaire, j'aimerais renseigner un label suivant au moins 2 conditions (nombre de conditions susceptibles d'évoluer comme d'habitude). Le fichier-joint devrai être plus explicite et si tel n'est pas le cas, n'hésitez pas à revenir à la charge.

Merci d'avance et bonne soirée à tous.
 

Pièces jointes

  • Label USF.xls
    46.5 KB · Affichages: 61

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : VBA - Renseigner un label suivant au moins 2 conditions

Bonsoir criscris11,

Quelque chose du genre:

Code:
Private Sub ListBox1_Change()
If ListBox1.ListIndex < 0 Then Exit Sub
If Cells(9 + ListBox1.ListIndex, "h") = "G1" And IsDate(Cells(9 + ListBox1.ListIndex, "i")) Then
  Label6 = "Ma Phrase " & Cells(9 + ListBox1.ListIndex, "i")
ElseIf Cells(9 + ListBox1.ListIndex, "h") = "G2" And Cells(9 + ListBox1.ListIndex, "j") = "Oui" Then
  Label6 = "Ma Phrase "
ElseIf Cells(9 + ListBox1.ListIndex, "h") = "G3" And Cells(9 + ListBox1.ListIndex, "k") = "Oui" Then
  Label6 = "Ma Phrase "
ElseIf Cells(9 + ListBox1.ListIndex, "h") = "G4" And IsDate(Cells(9 + ListBox1.ListIndex, "l")) Then
  Label6 = "Ma Phrase " & Cells(9 + ListBox1.ListIndex, "l")
Else
  Label6 = ""
End If
End Sub
 

criscris11

XLDnaute Accro
Re : VBA - Renseigner un label suivant au moins 2 conditions

Bonjour mapomme, le forum,

Tout d'abord merci pour ton intervention. Ton code fonctionne mais uniquement quand je clique sur une ligne dans la ListBox. Par contre dès que la zone de texte de recherche intuitive contient au moins un caractère, les informations récupérées dans le label ne correspondent plus du tout à la ligne sélectionnée (voir le fichier-joint avec les captures d'écran).

Merci et bon après-midi.
 

Pièces jointes

  • Label USF 2.zip
    40.3 KB · Affichages: 37

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : VBA - Renseigner un label suivant au moins 2 conditions

Bonjour mapomme, le forum,
Par contre dès que la zone de texte de recherche intuitive contient au moins un caractère, les informations récupérées dans le label ne correspondent plus du tout à la ligne sélectionnée.

Voir le fichier joint pour une seconde tentative.
 

Pièces jointes

  • VBA - Renseigner un label suivant au moins 2 conditions v1.xls
    83.5 KB · Affichages: 48

criscris11

XLDnaute Accro
Re : VBA - Renseigner un label suivant au moins 2 conditions

Re bonsoir,
Merci pour ton retour rapide. Je viens de tester : cela a l'air de coller. Si j'ai le temps demain (au boulot), je testerai dans mon fichier qui est prévu pour un effectif entre 500 et 600 personnels. Je te tiendrai au courant au plus tôt.
Le temps que je te tiens, comment sélectionner dans la feuille la cellule contenant le nom de la ligne sélectionnée dans la ListBox ?


PS : attention, j'ai des doublons dans les noms sinon ce serait trop facile.

Merci et bonne soirée.
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : VBA - Renseigner un label suivant au moins 2 conditions

(re)Bonsoir criscris11,
Le temps que je te tiens, comment sélectionner dans la feuille la cellule contenant le nom de la ligne sélectionnée dans la ListBox ?
PS : attention, j'ai des doublons dans les noms sinon ce serait trop facile.

Il faut double-cliquer sur un élément de la listbox pour sélectionner la cellule correspondante.
 

Pièces jointes

  • VBA - Renseigner un label suivant au moins 2 conditions v2.xls
    86 KB · Affichages: 55

criscris11

XLDnaute Accro
Re : VBA - Renseigner un label suivant au moins 2 conditions

Bonjour mapomme, le forum,
Pour résumer, j'ai réussi à transposer tes parties de codes dans mon fichier : tout roule à merveille sauf la sélection par double-clic où je me retrouve avec une erreur d'exécution '9' : l'indice n'appartient pas à la sélection mais je ne vois pas d'où cela peut venir. (problème résolu : voir plus bas)
Comment veux-tu procéder pour voir où cela pourrait coincer ?
Afin de permettre mon apprentissage en VBA, aurais-tu le temps et la gentillesse de commenter tes codes ?
En te remerciant par avance, je te souhaite un bon week-end.

Après débogage, c'est la ligne n° 3 de la macro qui est surlignée en jaune :

Code:
Sheets("Base de gestion MDR").Activate

En fait, j'ai fait une erreur de frappe dans le nom de la feuille donc plus rien à signaler de ce côté-ci cela fonctionne parfaitement. Merci. Reste juste à me commenter tes codes avec le plus d'infos possible si tu as le temps.

Par contre j'ai voulu créer un textbox qui compte le nombre d'occurences dans la listbox mais à l'initialisation du formulaire je me retrouve avec un nombre amputé de 5 occurences : pourquoi je n'en sais rien mais tout reviens dans l'ordre quand je saisi au moins une lettre dans la zone de recherche intuitive. J'ai bien essayé de rajouter la ligne :

Code:
TextBox24.Value = ListBox1.listCount

sur l'évènement Private Sub TextBox1_Change() mais cela ne change rien à mon problème.

Merci d'avance.
 
Dernière édition:

Discussions similaires

Réponses
20
Affichages
820
Réponses
8
Affichages
448

Statistiques des forums

Discussions
312 294
Messages
2 086 894
Membres
103 404
dernier inscrit
sultan87