Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Affichage liste de données à la suite

jego.guillaume22

XLDnaute Nouveau
Bonjour,

Désolé pour le titre, je vous avoue que j'ai un peu du mal a donner un nom à mon problème.

Je vous explique un exemple de mon problème :

On va dire que j'ai 3 lignes de 2 checkbox, un ChBox "Défaut" et un ChBox "Ok" par ligne dans un userform définie à cet effet.
ce qui donne :

ChBoxD1 o ChBoxO1 o
ChBoxD2 o ChBoxO2 o
ChBoxD3 o ChBoxO3 o

Mes checkBox codé avec des variables propre à leurs identités (Exemple pour ChBoxD1, Sa variable s'appelle varChBoxD1)

( J'avoue je ne me suis pas trop foulé pour leurs noms car en réalité j'ai une centaine de checkBox, c'est comme dans le dessin animé Némo, Marin, son père attend tellement de bébé qu'ils souhaitent tous les appeler pareil ! Plus y'en a, moins t'as envie de chercher !)

Bref, j'aimerais que si la ChBoxD2 est coché, qu'un message prédéfinie (Du type "msgbox "Défaut pour la partie 2") apparaisse en première ligne dans un label d'un autre userform. (Même si c'est dans le label de ce même userform ne vous inquiétez pas je serais l'adapter à mon programme, ce n'est pas ça l'importance de mon problème.)

Et que si ChBoxD2 et ChBoxD3 sont activés, qu'un message propre à chacun des défaut apparaissent dans le userform à la ligne et dans l'ordre sélectionné ... Fin je ne sais pas si je suis clair ... Je donne un exemple de ce que je sais faire et un exemple de ce que je veux que ça fasse :

Exemple de ce que je sais faire :


ChBoxD1 o ChBoxO1 x
ChBoxD2 x ChBoxO2 o
ChBoxD3 x ChBoxO3 o

ça donne sur mon label :


Ligne 1
Ligne 2 "Défaut pour la partie 2"
Ligne 3 "Défaut pour la partie 3"


et moi je veux que ça fasse

ChBoxD1 o ChBoxO1 x
ChBoxD2 x ChBoxO2 o
ChBoxD3 x ChBoxO3 o

ça donne sur mon label :


Ligne 1 "Défaut pour la partie 2"
Ligne 2 "Défaut pour la partie 3"
Ligne 3



Sans oublié qu'en réalité j'ai près de 100 CheckBox donc 50 potentialités de défauts ....


J'aurais bien voulu vous passer mon programme mais il ne fonctionne pas encore donc vous ne pourrez rien en tirer, j'ai essayé d'être le plus clair possible ...




En vous remerciant pour votre lecture et j'espère ( si j'ai été assez précis ) que quelqu'un pourra répondre à ce problème que je rencontre .


Sayonara !


Guillaume
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Affichage liste de données à la suite

Bonjour Guillaume,

J'aurais bien voulu vous passer mon programme mais il ne fonctionne pas encore donc.................

Donc je dois partir de rien et tenter de donner une réponse qui répond exactement à ta question en interrogeant ma boule de cristal


un essai en pièce jointe ( mais avec des optionbutton pour que tu puisses aussi te casser un peu la tête )

à+
Philippe
 

Pièces jointes

  • 111.xlsm
    18.3 KB · Affichages: 33
  • 111.xlsm
    18.3 KB · Affichages: 32

jego.guillaume22

XLDnaute Nouveau
Re : Affichage liste de données à la suite

Bonjour et merci pour ta réponse phlaurent55,

Avant tout je tiens a m'excuser pour le temps de réponse. Hélas je n'ai pas accès à internet tous les jours.

Ton code n'est pas très loin de ce que je recherche et beaucoup plus court que le miens !
Je t'ai fais un exemple de ce que je souhaiterai.
J'ai pu me permettre de le faire vue le tout petit nombre de possibilité.
Dans mon cas de figure je rencontre la difficulté du nombre de variantes possible (des Milliers je pense)

cf pièce jointe

J'utilise la feuille excel car j'ai besoin de garder une trace des défauts journaliers.
En effet mon programme s'utilise tous les jours et je dois en garder une trace.

Merci pour le temps que tu m'a accordé et j'espère que tu sera en mesure de pouvoir répondre à mon cas de figure ...

Sayo !

Guillaume
 

Pièces jointes

  • Info code vba pour forum.xlsm
    29.8 KB · Affichages: 26

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Affichage liste de données à la suite

Re-Bonjour,

J'ai pu me permettre de le faire vue le tout petit nombre de possibilité.
Dans mon cas de figure je rencontre la difficulté du nombre de variantes possible (des Milliers je pense)

Des milliers de variantes !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Dans ce cas l'userform va avoir les dimensions d'un drap de lit pour 6 personnes

Une autre approche en pièce jointe

à+
Philippe
 

Pièces jointes

  • 111.xlsm
    23 KB · Affichages: 22
  • 111.xlsm
    23 KB · Affichages: 29

jego.guillaume22

XLDnaute Nouveau
Re : Affichage liste de données à la suite

Salut et merci pour ta réponse phlaurent55 !
Tu es vraiment super !


Comment ça marche ? Comment est ce que ça se fait que tes lignes apparaissent à la suite les unes des autres en fonction si il y a un défaut ou non ?

Il n'y a pas moyen de faire ça avec le fichier que j'ai envoyé précédemment ?

Parce que le fichier que j'ai envoyé précédemment est exactement comme celui que je veux faire par contre c'est mon code
Code:
If varTestD1 = 0 And varTestD2 = 1 And varTestD3 = 1 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut1
    ElseIf varTestD1 = 1 And varTestD2 = 0 And varTestD3 = 1 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut2
    ElseIf varTestD1 = 1 And varTestD2 = 1 And varTestD3 = 0 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut3
    ElseIf varTestD1 = 1 And varTestD2 = 1 And varTestD3 = 1 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 0 And varTestD3 = 1 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut2
    ElseIf varTestD1 = 1 And varTestD2 = 0 And varTestD3 = 0 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut2 & vbLf & varTestDefaut3
    ElseIf varTestD1 = 1 And varTestD2 = 1 And varTestD3 = 0 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut3 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 1 And varTestD3 = 0 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut3
    ElseIf varTestD1 = 0 And varTestD2 = 1 And varTestD3 = 1 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 1 And varTestD2 = 0 And varTestD3 = 1 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut2 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 0 And varTestD3 = 0 And varTestD4 = 1 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut2 & vbLf & varTestDefaut3
    ElseIf varTestD1 = 1 And varTestD2 = 0 And varTestD3 = 0 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut2 & vbLf & varTestDefaut3 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 1 And varTestD3 = 0 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut3 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 0 And varTestD3 = 1 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut2 & vbLf & varTestDefaut4
    ElseIf varTestD1 = 0 And varTestD2 = 0 And varTestD3 = 0 And varTestD4 = 0 Then
    UserForm2.Label1.Caption = varTestDefaut1 & vbLf & varTestDefaut2 & vbLf & varTestDefaut3 & vbLf & varTestDefaut4
End If

Que j'aimerais adapter à une cinquantaines de coches "Défaut".
Je ne sais pas si ce que j'essaie d'expliquer est clair

Merci en tout cas


Sayonara

Guillaume
 

Discussions similaires

Réponses
5
Affichages
434
Réponses
7
Affichages
682
Réponses
16
Affichages
721
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…