bouton macro
#1
Débutant XLPages

Inscription: 06/02/2008
De Alger

Messages: 3

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 06-02-2008 15h06
[Excel2003]
[size=small]Bonjour,
j'ai suivi les tutoriaux avec beaucoups d'interet, surtout concernant la programmation du bouton lier à la macro, ce que voudrais savoir, c'est comment creer un bouton dans la barre d'outils, en utilisant vba.
merci.
[/size]
Hors Ligne
Rapport   Haut 

Re: bouton macro
#2
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 06-02-2008 16h47
Bonjour à tous,
Bienvenue à liazidf ,

Peut-être pourrais-tu commencer par créer un "bouton" par :

Outils / Personnaliser / Commandes / Réorganiser les Commandes

Sélectionne Barre de Menus ou Barre d'Outils

Ajouter et Modifier la sélection

Si cela te convient, nous pourrons te fournir un code qui te créera ce "bouton"

Au plaisir de te lire


Cordialement
Hors Ligne
Rapport   Haut 

Re: bouton macro
#3
Débutant XLPages

Inscription: 06/02/2008
De Alger

Messages: 3

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 06-02-2008 18h39
Citation :

JCGL a écrit:
Bonjour à tous,
Bienvenue à liazidf ,

Peut-être pourrais-tu commencer par créer un "bouton" par :

Outils / Personnaliser / Commandes / Réorganiser les Commandes

Sélectionne Barre de Menus ou Barre d'Outils

Ajouter et Modifier la sélection

Si cela te convient, nous pourrons te fournir un code qui te créera ce "bouton"

Au plaisir de te lire



Merci de votre réponse,
je souhaite vivement voir comment je pourrait le réalisé dynamiquement par code (vba), le but est, dès l'installation de la macro, le bouton se cree, disparait lors de la désinstallation.
Hors Ligne
Rapport   Haut 

Re: bouton macro
#4
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 06-02-2008 21h37
Re,

Il nous faudrait un peu plus d'explications pour pouvoir t'aider efficacement.

Pour créer ton "bouton" à l'ouverture et le supprimer à la fermeture :
Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application
.CommandBars("JourSemaine").Delete
On Error 
GoTo 0
End Sub

Private Sub Workbook_Open()
Dim CB As CommandBar
Dim CBB 
As CommandBarButton
Dim Feuille
Dim Onglet
Application
.ScreenUpdating False

Feuille 
= Array("Récapitulatif""Lundi""Mardi""Mercredi""Jeudi""Vendredi""Samedi""Dimanche")

Set CB Application.CommandBars.Add
    With CB
        
.Name "JourSemaine"
        
.Position msoBarTop
        
.Visible True
   
For Each Onglet In Feuille
            Set CBB 
CB.Controls.Add(Type:=msoControlButton)
                
With CBB
                    
.Caption Onglet
                    
.Style msoButtonIconAndCaption
                    
.FaceId 941
                    
.Visible True
                    
.OnAction "Voir"
                
End With
        Next Onglet
    End With

Sheets
("Récapitulatif").Activate
Application
.ScreenUpdating True
End Sub


Ceci est un exemple que tu trouveras mis en application dans le fichier joint.
Le demandeur souhaitait une BO (Barre d'Outils) parce qu'il souhaitait masquer les onglets (pourquoi ??)
Un clique sur le jour de la BO active la feuille souhaitée (par le OnAction = "Voir".
J'en profite pour signaler que la fonction "Prem" est une adaptation du code de mon ami Pierre-Jean sur XLD

Il ne te reste qu'à nous dire ce que tu souhaites et de déposer un fichier avec ton code macro

Au plaisir de te lire
Pièce jointe:
zip BO Jours Semaine.zip   [ Taille: 19.53 Ko - Téléchargements: 568 ]


Cordialement
Hors Ligne
Rapport   Haut 

Re: bouton macro
#5
Débutant XLPages

Inscription: 06/02/2008
De Alger

Messages: 3

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 06-02-2008 22h38
Salut à tous,
merci JCGL pour votre aide, c'est exactement ce que je voulais, encors une petite question: dans le OnAction est ce que je peut mettre une fonction où une procédure ?
Hors Ligne
Rapport   Haut 

Re: bouton macro
#6
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 07-02-2008 09h37
Bonjour à tous,

liazidf : oui le .OnAction = "ici le nom de ta procédure sans le Sub et sans les ()".

Dans l'exemple déposé Sub Voir() est dans un module

Si tu penses le sujet [Résolu], merci de mettre le Préfixe de sujet correspondant :

Image redimensionnée

Tu peux revenir sur ta décision et/ou une nouvelle contribution peut être déposée même si le sujet est considéré [Résolu]

A+


Cordialement
Hors Ligne
Rapport   Haut 

Re: bouton macro
#7
Débutant XLPages

Inscription: 01/06/2007
De Liège Belgique

Messages: 12

Système d'exploitation:
PC & Mac
Version Excel utilisée:
2016, MAC 2011
Posté le : 07-02-2008 13h30
Bonjour,

Dans la macro Private Sub Workbook_Open() juste après Application.ScreenUpdating = False, je rajouterais les instructions ci-après :

On Error Resume Next
Application
.CommandBars("JourSemaine").Delete
On Error 
GoTo 0

En cas de sortie ou de plantage d'excel sans sortir par la macro Before close, cela permettra de vérifier que la barre n'est pas présente dans l'appli lors de l'ouverture du fichier.

Amicalement

Dan
Hors Ligne
Rapport   Haut 

Re: bouton macro
#8
Accro XLPages

Inscription: 23/05/2007
De Chamrousse

Messages: 309

Système d'exploitation:
PC
Version Excel utilisée:
2013
Posté le : 07-02-2008 14h19
Bonjour à tous,
Salut Dan ,

Merci pour ce précieux conseil.

Au plaisir de te croiser ici ou ailleurs


Cordialement
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes