Poroblème affichage de données

  • Initiateur de la discussion Initiateur de la discussion lironik
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

L

lironik

Guest
Bonjour le forum
Voici mon code d'origine
Code:
Dim i%, j as integer

i=nbprestations.value

For j = 1 to 12
     quantite.visible = True
     designation.visible = true
     controls("labelP" & j).visible = (j <= i)
     Controls("designationP" & j).Visible = (j <= i)
     Controls("quantiteP" & j).visible = (j <= i)
Next

Désormais je voudrais que le quantite et Controls("quantiteP" & j) ne soit visible que si Controls("designationP" & j) prend la valeur "Remplacement soufflet de cardan". Voilà le code que j'ai élaboré:

Code:
Dim i%, j as integer

i=nbprestations.value

For j = 1 to 12
     quantite.visible = True
     designation.visible = true
     controls("labelP" & j).visible = (j <= i)
     Controls("designationP" & j).Visible = (j <= i)     
            If Controls("designationP" & j).value = "Remplacement de soufflet de cardan" Then
                  quantite.visible = True
                  Controls("quantiteP" & j).visible = true
            End if
Next

Mais ce code ne marche pas donc je sollicite votre aide
 
Re : Poroblème affichage de données

Bonsoir à tous

@lironic
Je me suis un peu embarqué avec ton problème, mais il y avait tellement de choses à voir...
Alors pour répondre à la question initiale effectue les modif suivantes (à partir de ton programme initial):

Ajoute la sub suivante
Code:
Private Sub Position(ByVal p%)
    
    If Controls("designationP" & p).Value = "Remplacement soufflet de cardan" Then
        quantite.Visible = True
        Controls("quantiteP" & p).Visible = True
    End If
    
End Sub
Dans les Sub designationPx_Change, ajoute la ligne en bleu
Code:
Private Sub designationP[COLOR=Red][B]2[/B][/COLOR]_Change()
    If flag = True Then Exit Sub
    [COLOR=Blue][B]Position[/B][/COLOR] [COLOR=Red][B]2[/B][/COLOR]
    Call maj(designationP2.Value, 2)
End Sub
Dans la sub nbprestations_Change(), modifie comme suit
Code:
...
[COLOR=Blue]designation.Visible[/COLOR] [COLOR=Blue]= True[/COLOR] 'Déplacer cette ligne ici
For j = 1 To 12
    Controls("LabelP" & j).Visible = (j <= i)
    Controls("designationP" & j).Visible = (j <= i)
    [COLOR=Blue]Supprimer le if.[/COLOR]..
Next j
Là, théoriquement ça marche... 🙂

Edit : Le programme que j'ai posté précédemment, est sacrément bogué. 🙁

A plus
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
820
Réponses
4
Affichages
742
  • Question Question
Microsoft 365 Erreur UBound
Réponses
4
Affichages
296
Réponses
3
Affichages
333
Réponses
5
Affichages
928
Retour