Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

m2003

Cherche un pro en VBA Excel

Messages recommandés

Voilà je cherche une macro qui me permette de remplacer le menu contextuel dans mes feuilles de classeur par un menu personnaliser. :P:-(:-P

Partager ce message


Lien à poster
Partager sur d’autres sites

Pourrais-tu être plus précis quand au menu contextuel que tu veux modifier et l'usage exacte que tu veux en faire.

Chaque option d'un menu contextuel devant lui aussi être défini sous VB, c'est un peu vaste et vague, pour pouvoir être traité seul par une macro.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut El-Matador, j'ai une application Excel qui contient une dizaine de feuilles. Je voudrais remplacer le menu contextuel standard par un menu contextuel me permettant de me déplacer d'une feuille à l'autre: je précise que j'ai supprimé toutes les barres de menu par macro. Cependant j'ai laissé un bouton de retour à la feuille de menu, mais étant donné que ce bouton est situé au bas de chaque feuille excel il n'est pas pratique de retourner au menu principal lorsqu'on se trouve au milieu de la feuille (perte de temps vu qu'il y a 1000 lignes par feuille). :P:-(:-P

Modifié par m2003

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut, voilà après quelques tests et recherches, tu peux essayer la macro suivante

 

Sub CreationMenuContextuel()

 

' Macro créée par El-Matador @ 06/04

 

' Utilise le commandbars("Cells") pour le menu utilisé dans le tableau

With Application.CommandBars("Cell").Controls.Add(msoControlButton)

' Défini l'intitulé de la nouvelle fonction

.Caption = "Remonter en haut de page"

' Si BeginGroup = True, crée une ligne de séparation avant la fonction

.BeginGroup = False

' Lors de la sélection, renvoi vers la fonction spécifiée

.OnAction = "HautDePage"

End With

 

With Application.CommandBars("Cell").Controls.Add(msoControlButton)

.Caption = "Réinitialise le menu"

.BeginGroup = True

.OnAction = "EffaceMenuContextuel"

End With

End Sub

'Réinitialise le menu contextuel complètement

Sub EffaceMenuContextuel()

Application.CommandBars("Cell").Reset

End Sub

Sub HautDePage()

' Renvoi à la première cellule A1

ActiveSheet.Range("A1:A1").Activate

End Sub

 

Ceci est un exemple mais te donne déjà une première piste importante, à toi de l'adapter à tes besoins exactes. Merci de me tenir informé et en espérant avoir pu t'aider au mieux. N'hésite pas à me recontacter pour d'autres préoblèmes spécifiques

 

Mata :P

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×