Changement de nom fichier dans le code

Bonjour à tous,

J'ai un fichier référence que je nomme "Semaine 52", je dois le renommer en fonction de la semaine sur laquelle je travailles. Ensuite je travaille avec un fichier qui se nomme "Pointage personnel", dans lequel je viens extraire les heures effectuées par le personnel.

Dans mon code, je dois ouvrir le fichier personnel pour que mes formules fonctionnent, mais lorsque je dois revenir sur le fichier dans lequel j’exécute ma macro ( en l’occurrence ici semaine 52 mon fichier de référence) je suis obligé de faire un "Windows("Semaine 52.xls").Activate", hors si mon fichier ne s"appelle plus Semaine 52 mais Semaine 30 par exemple, cela va poser problème une fois qu'il sera renommé...

Je ne peux hélas vous mettre en PJ mes fichiers pour des raisons de confidentialités, mais je peux vous partager mon code.

Dim lig As Long
Dim i As Integer
Dim wb As Workbook
Set wb = Workbooks.Open("P:\LOGISTIQUE\GESTION ATELIERS\Pointage Personnel.xlsm")
lig = 2118
[color=#FF0000]Windows("Semaine 52.xls").Activate[/color]
'C'est precisément sur la ligne du dessus ou j'ai besoin de transformer le nom de mon fichier....
Do While Not IsEmpty(Range("C" & lig))
    lig = lig + 1
    Loop

For i = 2119 To lig - 1

Range("G" & i).FormulaR1C1 = "=SUMIFS('Pointage Personnel.xlsm'!Bheure[NB_H],'Pointage Personnel.xlsm'!Bheure[DATE],R2116C,'Pointage Personnel.xlsm'!Bheure[Noms],RC[-5]&"" ""&RC[-4])"

Next

ActiveWorkbook.BreakLink Name:= _
        "P:\LOGISTIQUE\GESTION ATELIERS\Pointage Personnel.xlsm" _
        , Type:=xlExcelLinks

wb.Close

End Sub

J’espère que ma requête est claire sinon n’hésitez pas à me demander des informations

Merci pour votre aide,

Guillaume

Bonjour à toi

Tu as plusieurs moyens de procéder:

  • Utiliser une variable type String pour stocker ActiveWorkbook.Name au début de ton code, afin de rappeler ce nom plus tard
  • Utiliser ThisWorkbook.Activate, ThisWorkbook fait référence au classeur contenant la macro, tu peux également utiliser ThisWorkbook.Name si besoin

Effectivement, tout simplement le ThisWorkbook.Activate convient parfaitement.

Merci beaucoup

Cordialement,

Et oui, mais il faut le connaître

Merci d'avoir passé le sujet en résolu

Rechercher des sujets similaires à "changement nom fichier code"