comment créer un bouton pour lancer mon programme depuis Excel

comment créer un bouton pour lancer mon programme depuis Excel - VB/VBA/VBS - Programmation

Marsh Posté le 20-10-2009 à 11:34:12    

Bonjour, j'ai quasiment fini mon programm, et j'aimerais savoir comment faire pour créer un bouton pour le lancer depuis la barre d'outils, afin de le rendre disponible facilement depuis n'importe quel fichier excel ouvert.

Reply

Marsh Posté le 20-10-2009 à 11:34:12   

Reply

Marsh Posté le 21-10-2009 à 10:26:14    

Bonjour
S'agit-il de VBA Excel ?
Excel 2007 ou précédents ?

Reply

Marsh Posté le 21-10-2009 à 11:50:18    

VBA 6.5
Excel 2003 (mais je pense qu'il doit y avoir certains ordis dans la boîte ou une version plus récente est installée)
 
pour l'instant, j'ai une feuille Excel avec juste un bouton au milieu marque "lancer le programme, mais c'est pas génial comme méthode.

Reply

Marsh Posté le 23-10-2009 à 16:17:28    

vedammi a écrit :

VBA 6.5
Excel 2003 (mais je pense qu'il doit y avoir certains ordis dans la boîte ou une version plus récente est installée)
 
pour l'instant, j'ai une feuille Excel avec juste un bouton au milieu marque "lancer le programme, mais c'est pas génial comme méthode.


Reply

Marsh Posté le 23-10-2009 à 16:21:25    

Je peux vous proposer une solution, malheureusement, je pars dans une heure à l'étranger pour une dizaine de jours, et n'ai pas le temps de rédiger une explication complète.
Si cela n'est pas trop tard, je vous propose de vous la donner à mon retour, vers le 2-3 novembre.
Désolé de ce délai...

Reply

Marsh Posté le 23-10-2009 à 18:05:32    

Salut, un exemple sur http://cjoint.com/?kxsekcosBX , à adapter à ton contexte
voir également http://fring.developpez.com/vba/excel/barremenu/


Message édité par kiki29 le 25-10-2009 à 20:40:08
Reply

Marsh Posté le 03-11-2009 à 15:38:46    

Bonjour,
 
Comme promis (si cela vous est toujours utile), voici une solution que j'utilise régulièrement.
 
En plus de "MonAppli.xls", je crée un fichier d'installation (InstalMonAppli.xls par exemple) avec le code suivant :
 
"
Sub Auto_Open()
'
'Lancement du programme "MonAppli".
'Si le bouton de lancement existe déjà, on le supprime et on le recrée.
'S'il n'existe pas de bouton de lancement de l'application "MonAppli",
'on en installe un dans la barre d'outils "Standard"
'L'image de ce bouton se trouve dans la feuille "Feuil1" de ce fichier.
'
    chemin = ActiveWorkbook.Path
    ChDir chemin
    Set MonBouton = CommandBars.FindControl _
        (Type:=msoControlButton, Tag:="MonAppli" )
    If Not MonBouton Is Nothing Then
        MonBouton.Delete    'Supprime le bouton existant
    End If
     
    'Le bouton n'existe pas. On le crée.
     
    Set MonBouton = Application.CommandBars("Standard" ).Controls.Add _
        (Type:=msoControlButton, Before:=16, Id:=1)
    ActiveSheet.Unprotect
    ActiveSheet.Shapes("MonAppli" ).Select
    Selection.Copy
    MonBouton.PasteFace     'Mise à jour de l'image du bouton
    MonBouton.Tag = "MonAppli"   'Identification du bouton
    MonBouton.Caption = "Mon Application"   'Info-bulle
    MonBouton.OnAction = chemin & "\InstalMonAppli.xls!lanceur"    'Action à effectuer.
    Lanceur
End Sub
 
Sub Lanceur()
    'Lancement de la routine "Init" du programme MonAppli 'ouvert en Read Only pour éviter les  
    ‘modifications intempestives et/ou permettre une utilisation multiple éventuellement.
     
    chemin = ThisWorkbook.Path
    ChDir chemin
    Workbooks.Open FileName:=chemin & "\MonAppli.xls", updatelinks:=0, ReadOnly:=True
    Run "MonAppli.xls!Init"
    ThisWorkbook.Close savechanges = False
End Sub
"
 
J'ouvre ce fichier dans Excel la première fois pour installer le bouton dans la barre d'outils Stadards d'Excel.
Les lancement suivants se feront en cliquant directement sur le bouton dans la barre d'outils Standard d'Excel.
Le passage par l'intermédiaire : "InstalMonAppli.xls!lanceur" permet de lancer l'application en ‘read only pour éviter les  
modifications intempestives et/ou permettre une utilisation multiple éventuellement.

Reply

Marsh Posté le 03-11-2009 à 15:42:37    

PS:
 
Avec Excel 2007, le bouton sera positionné automatiquement dans l'onglet "Compléments" du Ruban, avec cette méthode.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed