Bonjour,
Voici le pb que je rencontre +sieurs personnes ont essaye de m'aider en vain
:c
En clickant sur un Shape rattaché au module ci-dessous, un utilisateur
accède directement au réglages "Couleurs et traits" de ce dernier:
Public Sub FOND_Click()
Dim ShpFOND As Shape
ActiveSheet.Unprotect
Set ShpFOND = ActiveSheet.Shapes(Application.Caller)
ShpFOND.Select
Application.CommandBars("Worksheet Menu Bar").Controls("Format"). _
Controls("&Forme automatique...").Execute
'je ne sais dailleurs pas comment désactiver les autres onglets
ActiveSheet.Protect
End Sub
Mais la ligne Application.CommandBars me pose pb.
En effet, lorsque je n'ai pas "initié" Excel à ce menu...
en clickant avec ma souris sur le menu "Format" puis "Forme
automatique"
...Cette ligne de code créé une erreur.
C'est vraiment énervant, merci bcp si vous pouvez m'aider.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Méta-MCI (MVP)
Bonjour !
Et en remplaçant la ligne en question par une commande VBA ?
Avec un truc un peu dans ce genre :
Selection.AutoFormat Format:=xlRangeAutoFormatSimple, Number:=True, Font _ :=True, Alignment:=True, Border:=True, Pattern:=True, Width:=True
Pour obtenir cette commande, j'ai simplement activé l'enregistreur de macros, appelé le format automatique, par le menu, puis j'ai lu le contenu de la macro.
@+
Michel Claveau
Bonjour !
Et en remplaçant la ligne en question par une commande VBA ?
Avec un truc un peu dans ce genre :
Selection.AutoFormat Format:=xlRangeAutoFormatSimple, Number:=True, Font _
:=True, Alignment:=True, Border:=True, Pattern:=True, Width:=True
Pour obtenir cette commande, j'ai simplement activé l'enregistreur de macros, appelé le format
automatique, par le menu, puis j'ai lu le contenu de la macro.
Et en remplaçant la ligne en question par une commande VBA ?
Avec un truc un peu dans ce genre :
Selection.AutoFormat Format:=xlRangeAutoFormatSimple, Number:=True, Font _ :=True, Alignment:=True, Border:=True, Pattern:=True, Width:=True
Pour obtenir cette commande, j'ai simplement activé l'enregistreur de macros, appelé le format automatique, par le menu, puis j'ai lu le contenu de la macro.
@+
Michel Claveau
manu
Bonjour Michel,
La commande AutoFormat s'applique à une Range et non à une Forme. Mon Souci est en fait (je crois) de charger en mémoire le contrôle:
Application.CommandBars("Worksheet Menu Bar").Controls("Format"). _ Controls("&Forme automatique...").Execute
...Sans utiliser la souris.
Bonjour Michel,
La commande AutoFormat s'applique à une Range et non à une Forme.
Mon Souci est en fait (je crois) de charger en mémoire le contrôle:
Application.CommandBars("Worksheet Menu Bar").Controls("Format"). _
Controls("&Forme automatique...").Execute