VBA changer le nom d'un fichier et suivie ds macro

Bonjour, j'auimerais savoir s'il y a possibilité que les nom du fichier dans une macro puisse se changer automatiquement lorsqu'on change le nom du fichier.

exemple de code

Sub generer()

'

' generer Macro

' Macro enregistrée le 2008-10-12 par Utilisateur

'

'

Sheets("Normes et Ex. Gén.").Select

Columns("BZ:BZ").Select

Selection.ClearContents

Range("CA1").Select

Application.Run "'nouveau nom'!Mac_norme"

Range("BZ1:BZ1000").Select

Selection.Copy

Range("C6").Select

ActiveWindow.SmallScroll Toleft:=70

Sheets("Carte de travail").Select

ActiveWindow.SmallScroll ToRight:=2

Range("o6").Select

ActiveSheet.Paste

End sub

la section "'nouveau nom'" ne se change pas lorsqu'on change le nom du fichier excel.

Que puisje faire

Bonjour,

Que veux-tu faire exactement ? Ouvrir le fichier qui se trouve nommé dans la cellule CA1 ou autre chose ? Donne plus d'explication sur ce que tu fais.

Petit commentaire sur ton code. Evite de mettre des points dans le nom de ta feuille. Mets plutôt comme ceci : Normes_et_ Ex_Gen"

En attendant ta réponse; ton code peux devenir celui-ci :

Sub generer()
' generer Macro
' Macro enregistrée le 2008-10-12 par Utilisateur
' Macro amendée par Dan
Sheets("Normes et Ex. Gén.").Select
Columns("BZ:BZ").ClearContents
Range("CA1").Select
Application.Run "'nouveau nom'!Mac_norme"
Range("BZ1:BZ1000").Copy Destination:=Sheets("Carte de travail").Range("o6")
End Sub

A te relire

Dan

Ce que je veux est que si je renomme le fichier excel dans lequel il y a cette macro, je veux que la macro fonctionne quand même car il y a une référence du nom du fichier excel dans la macro. Donc, actuellement, la macro ne fonctionne pas si je change le nom. Je dois envoyé ce fichier à quelqu'un d'autre qui ne connais pas beaucoup Excel et qui doit renommer le fichier.

Que puis-je faire?

Merci.

Bonsoir,

Range("CA1").Select -> qu'y a t il dans la cellule CA1 et à quoi cela sert il ?

La macro GENERER n'a rien à voir avec le nom de ton fichier. Le tout est de voir comment elle est exécutée. A partir d'un bouton sur ta feuille ?

Comment s'appelle la macro à utiliser et en fonction de quoi ? Je vois une instruction Application.Run "'nouveau nom'!Mac_norme". La macro s'appelerait MAC_norme ?

A te relire

Dan

Bonjour,

le code de macro que j'ai copiée plus haut est seulement une partie de la macro réelle. Ma problématique est plus générale à savoir comment copier et renommer un fichier excel contenant des marco et que les références des macro se mettent à jour.

Bref dans l'exemple ci haut, le code :

Application.Run "'nouveau nom'!Mac_norme"

nouveau nom est le nom du fichier excel

Mac_norme est le nom de la macro

Oups! j'ai oublier de dire que la macro "Généré" fait appel à une autre macro "Mac_norme"

Je crois que la problématique viens de là.

Suis-je un peu plus clair?

Merci

Bonjour, en regardant comme il le faut et en faisant des essais, j'ai trouvé la solution qui est bien simple mais trop simple. Lorsqu'on crée la macro et que l'on fait référence à une autre macro, Excel inscrit par défaut le nom du fichier dans lequel se retrouve la macro par défaut. Il suffit d'enlever le nom du fichier et le tour est joué.

Donc dans mon exemple,

Application.Run "'nouveau nom'!Mac_norme"

devient

Application.Run "Mac_norme"

Ainsi on peut renommer le fichier et les macro fonctionnent quand même.

Merci beaucoup de votre aide.

Fran6

Rechercher des sujets similaires à "vba changer nom fichier suivie macro"