Ecrire du code un peu plus proprement!

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

T

Tinz

Guest
Salut,
J'ai crée dans mon application une fonction sub ("raz")
Est ce qu'il ya pas moyen d'écrire ça un peu plus proprement?
Merci
 

Pièces jointes

Salut a toutes et tous

Dans un premier temps :


Sub Raz()
With Worksheets("calculation")
.Range ("B79,B81:B82,B97,B108,B121,C6,C19,C23:C25,C30,D44,D50,D52,M9") = ""
.Range("B79,B81:B82,B97,B108,B121,C6,C19,C23:C25,C30,C64😀64,C65,C66😀66,D44,D50,D52,M9") = ""
.Range("C14") = ""
.CheckBox7.Visible = False
.CheckBox3 = False
.CheckBox4 = False
.CheckBox5 = False
.CheckBox6 = False
.CheckBox7 = False
.CheckBox10 = False
.CheckBox12 = False
.OptionButton1 = False
.OptionButton3 = False
.OptionButton4 = False
.OptionButton5 = False
.OptionButton6 = False
.OptionButton7 = False
.OptionButton8 = False
.OptionButton9 = False
.OptionButton10 = False
.OptionButton11 = False
.OptionButton12 = False
.OptionButton13 = False
.Range("C6").Select
End With

Run ("Enlever_image")
End Sub

Il me semblerais que tu pourrais faire une boucle sur le controls, mais je ne me rapelle plus le code, je cherche

Ensuite le Run, jamais vu sauf sur les premiers programme que je faisait sur Amstrad 6128, alors je pense que tu vas avoir d'auttes réponses, a ce sujet

bye, G'Claire
 
Tinz, le forum

Je voyais un truc du genre, cela :


Sub Raz()
Dim Ctrl As Controls
With Worksheets("calculation")
.Range("B79,B81:B82,B97,B108,B121,C6,C19,C23:C25,C30,D44,D50,D52,M9") = ""
.Range("B79,B81:B82,B97,B108,B121,C6,C19,C23:C25,C30,C64😀64,C65,C66😀66,D44,D50,D52,M9") = ""
.Range("C14") = ""
For Each Ctrl In .Worksheets("calculation")
If TypeOf Ctrl Is MSForms.CheckBox And TypeOf Ctrl Is MSForms.OptionButton Then
With Ctrl
.Visible = True
End With
End If
Next Ctrl
.Range("C6").Select
End With
End Sub

Mais j'ai une erreur : Mthode non géreée par l'objet.

Donc dans une feuille cela ne se passe pas de la même manière que dans un UserForm.

Je cherche : "Allez cherche Lycos, lol"

Bye, A+, G'Claire
 
Bonsoir Tinz, G_Claire, le Forum.


Pour la boucle sur les contrôles présents sur la feuille, on peut faire :

Sub Raz()
Dim Ctrl As Shape
With Worksheets("calculation")
   ...
   ...
   For Each Ctrl In .Shapes
      Select Case Left(Ctrl.Name, 8)
      Case "OptionBu", "CheckBox"
         Ctrl.Visible = True
      End Select
   Next Ctrl
   .Range("C6").Select
End With
End Sub



Cordialement,
Didier_mDF

myDearFriend-3.gif
 
- 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
13
Affichages
393
Réponses
32
Affichages
1 K
Retour