création de menu en VBA avec un userform (pédagogie en cours de création)

exemple de userform en vba avec 4 boutons

Boite de dialogue avec message Hello MSGBOX

utilisation de la procédure show et hide sur le userform2


en cliquant sur ok le formulaire ne s’affiche plus
ou par exemple avec ce message de fermeture


en cliquant sur le bouton menu en bleu, on affiche le menu avec les boutons janvier février mars etc …

En cliquant sur les boutons, on atteint la feuille souhaitée ou on peut fermer le formulaire

code source vba
code pour afficher le menu


affichage du userform2

code pour atteindre la feuille janvier à l’aide du bouton Janvier nommé btn01

code pour atteindre la feuille février

code pour atteindre la feuille mars

code pour le bouton fermer du formulaire menu calendrier


comment afficher le formulaire sous excel
menu formulaire fini

zone d’onglets feuilles de janvier à décembre)

couleur de l’onglet dans excel
Par défaut, la couleur des onglets des feuilles de calcul Excel est grise. Pour changer la couleur d’un onglet, un clic droit permet d’accéder à la palette de couleur :

Cette action manuelle peut également être réalisée par programmation en VBA à l’aide de l’instruction .Tab.
Par exemple, le code suivant change la couleur de l’onglet de la première feuille de calcul (en partant de la gauche) en vert :With ActiveWorkbook.Sheets(1).Tab .Color = 5296274 .TintAndShade = 0 End With

Les couleurs peuvent être codifiées à partir de la fonction RGB (pour Rouge / Vert / Bleu) ; par exemple : RGB(0, 255, 0).
paramètres complémentaires des couleurs d’onglets ou propriétés
Les paramètres de l’instruction .Tab sont les suivants :

exemple de classeur avec plusieurs onglets de feuille


si j’ajoute une feuille dans le classeur


la feuille active est colorée en vert clair
les autres couleurs ne changent pas
code vba à mettre en place dans la rubrique ThisWorkbook
c’est une procédure à l’activation de la feuille et la désactivation de la feuille.


code source faire un copier coller
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Sh.Names.Add “CoulTab”, Sh.Tab.Color
Sh.Tab.Color = &HFF00&
End Sub
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
On Error Resume Next
If Sh.Tab.Color <> &HFF00& Then
Sh.Names.Add “CoulTab”, Sh.Tab.Color
Else
Sh.Tab.Color = Sh.[CoulTab]: End If
End Sub

code pour afficher ou masquer un user form

À propos de l’auteur