Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
papou
Bonjour Si tu veux q'une macro soit disponible à tout moment avec n'importe quel classeur, la solution c'est de stocker ta macro dans le classeur de macros personnelles PERSO.XLS.
Cordialement Pascal
"Damran" a écrit dans le message de news: 449a7799$0$4782$
Bonjour,
J'ai créé une barre d'outil personnalisé. J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de mon fichier, lors de l'appel de la macro, Excel me demande l'ancien fichier.
Ma question : Comment faire pour affecter une macro à un bouton de manière "relative", afin que le bouton appel bien la macro du classeur courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherche le classeur "ActiveWorkbook.Name" !
Si vous avez une idée.
Merci d'avance
Damran
Bonjour
Si tu veux q'une macro soit disponible à tout moment avec n'importe quel
classeur, la solution c'est de stocker ta macro dans le classeur de macros
personnelles PERSO.XLS.
Cordialement
Pascal
"Damran" <nothing@localhost.com> a écrit dans le message de news:
449a7799$0$4782$636a55ce@news.free.fr...
Bonjour,
J'ai créé une barre d'outil personnalisé.
J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel
modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de
mon fichier, lors de l'appel de la macro, Excel me demande l'ancien
fichier.
Ma question : Comment faire pour affecter une macro à un bouton de manière
"relative", afin que le bouton appel bien la macro du classeur courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherche le
classeur "ActiveWorkbook.Name" !
Bonjour Si tu veux q'une macro soit disponible à tout moment avec n'importe quel classeur, la solution c'est de stocker ta macro dans le classeur de macros personnelles PERSO.XLS.
Cordialement Pascal
"Damran" a écrit dans le message de news: 449a7799$0$4782$
Bonjour,
J'ai créé une barre d'outil personnalisé. J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de mon fichier, lors de l'appel de la macro, Excel me demande l'ancien fichier.
Ma question : Comment faire pour affecter une macro à un bouton de manière "relative", afin que le bouton appel bien la macro du classeur courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherche le classeur "ActiveWorkbook.Name" !
Si vous avez une idée.
Merci d'avance
Damran
JB
-Une BO perso pointe vers les macro avec le chemin physique lors de son installation. -On ne peut donc pas modifier le répertoire ou le nom. -Si la barre a été attachée au classeur, supprimer la BO et ouvrir le classeur avec le nouveau nom. Le chemin sera récrée.
On peut remplacer les BO perso par un menu:
Sub auto_open() Dim MaBarreDeCommande As CommandBar '---- Création barre On Error Resume Next Set MaBarreDeCommande = CommandBars.Add(Name:="NouvelleBarre", Temporary:=True) MaBarreDeCommande.Visible = True '------ Création menu Set newMenu = CommandBars("NouvelleBarre").Controls.Add(Type:=msoControlPopup, Temporary:=True) newMenu.Caption = "Personnalisé" '---- Création commandes Set ctrl1 = newMenu.Controls.Add(Type:=msoControlButton) ctrl1.Caption = "Importer" ctrl1.OnAction = "macro2"
Set ctrl2 = newMenu.Controls.Add(Type:=msoControlButton) ctrl2.Caption = "Exporter" ctrl2.OnAction = "macro2" End Sub
Sub auto_close() On Error Resume Next CommandBars("NouvelleBarre").Delete CommandBars("Worksheet Menu Bar").Visible = True End Sub
Sub macro2() MsgBox "coucou" End Sub
JB
Bonjour,
J'ai créé une barre d'outil personnalisé. J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de mon fichier, lors de l'appel de la macro, Excel me demande l'ancien fichi er.
Ma question : Comment faire pour affecter une macro à un bouton de manière "relative", afin que le bouton appel bien la macro du classeur courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherc he le classeur "ActiveWorkbook.Name" !
Si vous avez une idée.
Merci d'avance
Damran
-Une BO perso pointe vers les macro avec le chemin physique lors de son
installation.
-On ne peut donc pas modifier le répertoire ou le nom.
-Si la barre a été attachée au classeur, supprimer la BO et ouvrir
le classeur avec le nouveau nom. Le chemin sera récrée.
On peut remplacer les BO perso par un menu:
Sub auto_open()
Dim MaBarreDeCommande As CommandBar
'---- Création barre
On Error Resume Next
Set MaBarreDeCommande = CommandBars.Add(Name:="NouvelleBarre",
Temporary:=True)
MaBarreDeCommande.Visible = True
'------ Création menu
Set newMenu =
CommandBars("NouvelleBarre").Controls.Add(Type:=msoControlPopup,
Temporary:=True)
newMenu.Caption = "Personnalisé"
'---- Création commandes
Set ctrl1 = newMenu.Controls.Add(Type:=msoControlButton)
ctrl1.Caption = "Importer"
ctrl1.OnAction = "macro2"
Set ctrl2 = newMenu.Controls.Add(Type:=msoControlButton)
ctrl2.Caption = "Exporter"
ctrl2.OnAction = "macro2"
End Sub
Sub auto_close()
On Error Resume Next
CommandBars("NouvelleBarre").Delete
CommandBars("Worksheet Menu Bar").Visible = True
End Sub
Sub macro2()
MsgBox "coucou"
End Sub
JB
Bonjour,
J'ai créé une barre d'outil personnalisé.
J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel
modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de
mon fichier, lors de l'appel de la macro, Excel me demande l'ancien fichi er.
Ma question : Comment faire pour affecter une macro à un bouton de
manière "relative", afin que le bouton appel bien la macro du classeur
courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherc he
le classeur "ActiveWorkbook.Name" !
-Une BO perso pointe vers les macro avec le chemin physique lors de son installation. -On ne peut donc pas modifier le répertoire ou le nom. -Si la barre a été attachée au classeur, supprimer la BO et ouvrir le classeur avec le nouveau nom. Le chemin sera récrée.
On peut remplacer les BO perso par un menu:
Sub auto_open() Dim MaBarreDeCommande As CommandBar '---- Création barre On Error Resume Next Set MaBarreDeCommande = CommandBars.Add(Name:="NouvelleBarre", Temporary:=True) MaBarreDeCommande.Visible = True '------ Création menu Set newMenu = CommandBars("NouvelleBarre").Controls.Add(Type:=msoControlPopup, Temporary:=True) newMenu.Caption = "Personnalisé" '---- Création commandes Set ctrl1 = newMenu.Controls.Add(Type:=msoControlButton) ctrl1.Caption = "Importer" ctrl1.OnAction = "macro2"
Set ctrl2 = newMenu.Controls.Add(Type:=msoControlButton) ctrl2.Caption = "Exporter" ctrl2.OnAction = "macro2" End Sub
Sub auto_close() On Error Resume Next CommandBars("NouvelleBarre").Delete CommandBars("Worksheet Menu Bar").Visible = True End Sub
Sub macro2() MsgBox "coucou" End Sub
JB
Bonjour,
J'ai créé une barre d'outil personnalisé. J'ai affecté des macro aux boutons (clique droit, "affecter une macro")
Admettons que j'y affecte la macro "MaMacro", le problème est que Excel modifier l'appel pour : "[MaFeuille.xls]!MaMacro"
Résultat, comme le nom de la feuille est en dure, si je change le nom de mon fichier, lors de l'appel de la macro, Excel me demande l'ancien fichi er.
Ma question : Comment faire pour affecter une macro à un bouton de manière "relative", afin que le bouton appel bien la macro du classeur courrant ?
J'ai essayé ActiveWorkbook.Name, mais il ne l'interprète pas et cherc he le classeur "ActiveWorkbook.Name" !