Je voudrais solliciter votre aide sur un outils que j'essaie de concevoir pour mes besoins
j'ai grâce à custom UI editor créé un onglet personnalisé dans le ruban Excel. je voudrais par votre aide y affecter des macro afin que s'éxécute certaines taches
Je mets en PJ un fichier exemple qui traduit un peu le résultat attendu.
En vous remerciant par avance, je vous souahaite une excellente journée
pour cacher des onglets à l'ouverture, dans ThisWorBook
VB:
Private Sub Workbook_Open()
Dim sh As Worksheet
For Each sh In Sheets
sh.Visible = sh.Name = "Accueil"
Next
End Sub
On peut aussi les cacher sans qu'il ne soit possible de les afficher hors VBA (.Visible=2)
Attention, on peut travailler sur des onglets cachés mais dans certains cas, il faudra afficher l'onglet cible .
Pour les lignes à cacher, n'étant pas trop disponible pour le moment, si personne ne te propose une solution, je t'en préparerai une affectant de nombreuses plages dispersées dans le classeur.
pour cacher des onglets à l'ouverture, dans ThisWorBook
VB:
Private Sub Workbook_Open()
Dim sh As Worksheet
For Each sh In Sheets
sh.Visible = sh.Name = "Accueil"
Next
End Sub
On peut aussi les cacher sans qu'il ne soit possible de les afficher hors VBA (.Visible=2)
Attention, on peut travailler sur des onglets cachés mais dans certains cas, il faudra afficher l'onglet cible .
Pour les lignes à cacher, n'étant pas trop disponible pour le moment, si personne ne te propose une solution, je t'en préparerai une affectant de nombreuses plages dispersées dans le classeur.
Le code Marche impec, mais le soucis avec lui c'est qe du coup les macros affectés au ruban pour afficher les autres onglets échouent "La méthode select. de l'objet worksheet a échoué" dis la macro
re
Voic, pour les 0, un exemple dans la fenêtre de codes d'un onglet (à adapter pour les autres).
L'onglet Boule étant affiché (Alt F11), sachant que la plage E5:I9 est nommée T_Boule, la macro permettant de cacher une ligne, à la saisie de 2 zéros en colonne 3 et 4 de celle-ci, peut être
VB:
Private Sub Worksheet_Change(ByVal R As Range)
Dim L As Byte
If Not Intersect(R, [T_Boule]) Is Nothing Then
For L = 1 To [T_Boule].Rows.Count
Rows(R.Row).Hidden = [T_Boule].Rows(R.Row).Columns(3) + [T_Boule].Rows(R.Row).Columns(4) = 0
Next
End If
End Sub
Il est normal que tu ne puisses pas afficher les onglets que je n'ai pas inclus dans Ton ruban (c'était des macros pour l'exemple).
Si tu y tiens, il faudra reprogrammer ta série de boutons.
L'onglet Boule étant affiché (Alt F11), sachant que la plage E5:I9 est nommée T_Boule, la macro permettant de cacher une ligne, à la saisie de 2 zéros en colonne 3 et 4 de celle-ci, peut être