IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

créer un menu


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Par défaut créer un menu
    Bonjour,

    Mon but est de créer un menu exactement comme le menu demarrer de windows mais je ne sais pas comment faire.


    Je m'explique un peu plus. Je voudrais qu'en cliquant sur une cellule, cela ouvre à coté une liste ( comme quand on clique sur programmes dans le menu demarrer) et qu'ensuite si l'on clique sur un élément de la liste grâce à un lien hypertexte ca ouvre le fichier.

    C'est possible?

    Merci d'avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour


    Dans le module objet du classeur (ThisWorkbook):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Option Explicit
     
    'Création de la barre d'outils lors de l'ouverture du classeur
    Private Sub Workbook_Open()
        Dim Barre As CommandBar
     
        Set Barre = Application.CommandBars.Add("MenuPerso", msoBarPopup, False, True)
     
        With Barre.Controls.Add(msoControlButton, 1, , , True)
            .Caption = "Menu 01"
            .FaceId = 50
            .Tag = "C:\dossier\fichier01.xls"
            .OnAction = "NomMacro"
        End With
     
        With Barre.Controls.Add(msoControlButton, 2, , , True)
            .Caption = "Menu 02"
            .FaceId = 49
            .Tag = "C:\dossier\fichier02.xls"
            .OnAction = "NomMacro"
        End With
    End Sub
     
     
     
    'Supprime la barre d'outils lors de la fermeture du classeur
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        On Error Resume Next
        CommandBars("MenuPerso").Delete
    End Sub


    Dans le module objet de la feuille ou tu vas sélectionner tes cellules :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Dim XY As POINTAPI
     
        GetCursorPos XY
        Application.CommandBars("MenuPerso").ShowPopup XY.x, XY.y
    End Sub


    Dans un module standard :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Option Explicit
     
    Public Declare Function GetCursorPos Lib "user32" _
                  (lpPoint As POINTAPI) As Long
     
    Public Type POINTAPI
      x As Long
      y As Long
    End Type
     
     
    Sub NomMacro()
        ThisWorkbook.FollowHyperlink CommandBars.ActionControl.Tag
    End Sub


    bonne soirée
    michel

Discussions similaires

  1. Créer un menu contextuel XML
    Par Furius dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 15/09/2005, 17h57
  2. Créer un menu contextuel dans une zone de liste
    Par 973thom dans le forum Access
    Réponses: 10
    Dernier message: 13/09/2005, 23h59
  3. [Menu Plugin Eclipse]créer un menu et utiliser ActionFactory
    Par Nanoulov dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 01/07/2005, 13h42
  4. Créer un menu en AWT
    Par mr.t dans le forum Composants
    Réponses: 2
    Dernier message: 18/01/2005, 16h52
  5. Comment créer un menu popup style XP ?
    Par chaours dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/09/2003, 09h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo