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

Syntaxe code d"un userform

  • Initiateur de la discussion Initiateur de la discussion aubelix
  • 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 !

aubelix

XLDnaute Impliqué
Bonjour à tous les Amis du Forum.

Une fois de plus, je sollicite votre aide.
Mon problème est le suivant:

Dans un userform, j'affiche un sous-total dans le label17. C'est OK
J'affiche une valeur dans le label16 qui se situe dans la feuille BASE
Ca a marché jusqu'à ce que j'ajoute une condition. Si la valeur du Label16 est XXX alors afficher le Label18
qui aura pour valeur G4 de la feuille BASE.
J'ai un message d'erreur:
Erreur de compilation
Utilisation incorrecte de la propriété

Mon code ci-dessous

Sub UserForm_Initialize()
Label17 = Application.Subtotal(3, [C:C]) - 1
Label16 = Sheets("BASE").Range("F3")
If Label16.Caption = "XXX" Then Label18.Visible
Label18 = Sheets("BASE").Range("G4")
End Sub


Merci pour votre aide.
Cordialement.
 
Dernière édition:
Re : Syntaxe code d"un userform

salut

...comme quoi la doc. est encore plus pourrie que je le pensais...Si je tape ...

tape "=sou" dans une cellule de la feuille (F1 sera plus prolixe).

Si...le contrôle Label18 à un fond teinté, pour le masquer, essaye
Code:
Option Compare Text 'attention à la casse
Sub UserForm_Initialize()
  Label16 = Sheets("BASE").[F3]
  Label17 = Application.Subtotal(3, [C:C]) - 1 'ou Application.CountA([C:C]) - 1
  Label18 = Sheets("BASE").[G4]
  Label18.Visible = (Sheets("BASE").[F3] = "XXX") 
End Sub

sinon, avec le Label18 visible, tu as les autres propositions 😉


Bien entendu on ne peut voir que ce qui est visible (G4 non vide) !
 
Re : Syntaxe code d"un userform

re tous🙂🙂🙂

tu as pas de XXX dans ta plage pour avoir quelques chose en g4 il faut au mois 3 lignes renseignée

on pourrait ecrire

Code:
Label17 = Application.Subtotal(3, [C:C]) - 1
   Label16 = Feuil2.[f2]
   Label18 = IIf(Left(Label16, 3) = "XXX", Feuil2.[G2], "")

ou

Code:
 Label17 = Application.Subtotal(3, [C:C]) - 1
   Label16 = Feuil2.[f2]
   Label18 = IIf(Label16 Like "XXX*", Feuil2.[G2], "")

mais la on resoud pas le pb...
on prend seulement la premiere ligne dans destination tu peus en avoir plusieurs
peut être a la place du label18 une listbox la tu auras tous

pourquoi 2 users un seul serait suffisant??
 
- 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

Discussions similaires

Réponses
13
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…