Visibilité d'une macro présente dans une macro complémentaire ?

lebarbo

XLDnaute Occasionnel
Bonjour à tous,

J'ai fait une macro dans un module, de type :
Sub
blablbla
End Sub

J'ai ensuite enregistré le classeur en macro complémentaire puis ajouté la macro complémentaire.
Mon souci est que je peux éxecuter la macro en tapant son nom dans ALT+F8 mais elle est invisible et j'aimerais qu'elle soit visible par simplicité pour l'utilisateur lambda.

Merci d'avance pour vos réponse,
 

MJ13

XLDnaute Barbatruc
Re : Visibilité d'une macro présente dans une macro complémentaire ?

Bonjour Lebarbo

j'ai un Btn2 dans les déclarations, je pense que je peux le supprimer.

Oui, même le Btn1, qui n'est pas bien déclaré (dans ce cas éviter Option explicit).

Comment mémoriser la modification du nom du bouton mais surtout la modification de l'emplacement.
Effectivement, la barre d'outil se place en bas et ajoute une ligne d'outil dans l'affichage, alors qu'il peut y avoir de la place ailleurs et dans ce cas l'utilisateur peut la remonter.

C'est un problème qui est sur Xl2003, mais sur XL2007, il se met dans les compléments à la dernière place qu'il trouve.
Sur Xl2003, il me semble que l'on ne peut pas faire grand chose , sinon de le laisser et ne pas le supprimer à la fermeture du classeur.

PS : dans
With Btn1
.Caption = "Lance MaMacro"
.Text = "Description de Mamacro"
où l'utilisateur voit-il apparaître "Description de Mamacro"

Essaye avec ce code:
Code:
Set Btn1 = .Controls.Add(msoControlButton)
        With Btn1
            .Caption = "Lance MaMAcro"
            '.Text = "Description de MaMacro"
            .Style = msoButtonIconAndCaption
            .TooltipText = "Test pour Xla"
            '.FaceId = 39
            .OnAction = "Mamacro"
        End With

d'ailleurs je ne suis plus sûr de t'avoir remercier alors Merciiii lol

De rien, Je peux te remercier aussi pour cette discussion intéressante :).
 
Dernière édition:

lebarbo

XLDnaute Occasionnel
Re : Visibilité d'une macro présente dans une macro complémentaire ?

Bonjour MJ13, bonjour le forum,

Après de multiples recherches sur les possibilités de mémoriser l'emplacement du bouton, voici ce que j'ai pu trouver :

intRowIndex = 99
For Each cbThis In Application.CommandBars
With cbThis
If .Visible _
And .Type = msoBarTypeNormal _
And .Position = msoBarTop _
And .RowIndex <= intRowIndex _
And .Left >= intLeft Then
intRowIndex = .RowIndex
intLeft = .Left + .Width
End If
End With
Next cbThis

Set BarPerso = Application.CommandBars.Add("Ma barre")
With BarPerso
.Position = msoBarTop
.Left = intLeft
.RowIndex = intRowIndex
.Visible = True

Ceci permet d'ajouter ma barre à la dernière place à droite de la dernière ligne. Malheureusement le code n'arrive pas à compter les commandes AdobePDF et autres qui doivent à mon avis se charger après que la macro se soit lancée d'où le problème.
Comme on commence à dévier du sujet original, je vais poster un autre message et on verra si cela porte ses fruits.

Merci encore pour ta contribution et à bientôt,
 

Discussions similaires

Statistiques des forums

Discussions
312 765
Messages
2 091 898
Membres
105 092
dernier inscrit
jeremxl