Macro 2010 qui ne marche pas dans 2013

Bonjour,

J'ai une macro que j'ai réalisé dans excel 2010 et qui quand je veux l'utiliser dans excel 2013 sur le poste d'un collègue ne fonctionne plus.

Le code erreur indique qu'il ne trouve pas le fichier.

Je pense qu'il s'agit d'un problème dans le chemin d'accès au fichier. Il y a t'il une différence à ce niveau entre Excel 2010 et 2013, car cela marche parfaitement dans Excel 2010.

Le chemin d'accès est en dur dans ma feuille excel dans la cellule A5 et le nom de fichier est lui dans un menu déroulant de la cellule C7.

Voici mon code

Private Sub CommandButton4_Click()

'
' Remplacer_donnéesBF17 Macro_essais_rep_etnom_ds_celulles
'

'
Sheets("Données BF17").Select
Sheets("Données BF17").Name = "OldDonnées BF17"
ChDir Trim(CStr(Range("A5")))

Workbooks.Open Filename:=Trim(CStr(Range("C7")))
Sheets("Page1_1").Select
Sheets("Page1_1").Copy Before:=Workbooks( _
"Fichier de préparation du budget.xlsm").Sheets(1)
Sheets("Page1_1").Select
Sheets("Page1_1").Name = "Données BF17"
Sheets("Macros").Activate

End Sub

En vous remerciant,

Pour votre aide,

Cordialement,

JBB

Bonjour JBB

Si A5 contient le chemin et C7 le nom du fichier,

Essaye ceci

Private Sub CommandButton4_Click()
  Dim sPath As String, sFic As String
  '
  ' Remplacer_donnéesBF17 Macro_essais_rep_etnom_ds_celulles
  '
  '
  With Sheets("Données BF17")
    .Activate
    .Name = "OldDonnées BF17"
    sPath = .Range("A5").Value
    If Right(sPath, 1) <> "\" Then sPath = sPath & "\"
    sFic = Trim(.Range("C7").Value)
  End With
  Workbooks.Open Filename:=sPath & sFic
  Sheets("Page1_1").Copy Before:=Workbooks("Fichier de préparation du budget.xlsm").Sheets(1)
  Sheets("Page1_1").Name = "Données BF17"
  Sheets("Macros").Activate
End Sub

A+

BrunoM45 a écrit :

Bonjour JBB

Si A5 contient le chemin et C7 le nom du fichier,

Essaye ceci

Private Sub CommandButton4_Click()
  Dim sPath As String, sFic As String
  '
  ' Remplacer_donnéesBF17 Macro_essais_rep_etnom_ds_celulles
  '
  '
  With Sheets("Données BF17")
    .Activate
    .Name = "OldDonnées BF17"
    sPath = .Range("A5").Value
    If Right(sPath, 1) <> "\" Then sPath = sPath & "\"
    sFic = Trim(.Range("C7").Value)
  End With
  Workbooks.Open Filename:=sPath & sFic
  Sheets("Page1_1").Copy Before:=Workbooks("Fichier de préparation du budget.xlsm").Sheets(1)
  Sheets("Page1_1").Name = "Données BF17"
  Sheets("Macros").Activate
End Sub

A+

Bonjour BrunoM45 et Merci.

J'ai un message d'erreur qui indique : Erreur d'exécution '1004':

'mois en cours :\.xlsx' introuvable ....

J'ai l'impression que c'est parce que ton adressage (celulle C7 et A5) ne pointe pas vers ma feuille "Macros" mais vers la feuille "OlddonnéesBF17". En effet dans cette feuille en A5 j'ai un texte : "mois en cours:"

Il faut donc déclarer quelques part que l'adressage est dans la feuille "Macros".

Peux tu m'aider ?

En te remerciant,

JBB

Rechercher des sujets similaires à "macro 2010 qui marche pas 2013"