Enregistrer sous avec condition

Bonjour,

Je souhaite enregistrer mon classeur dans 3 répertoires différents.

Jusque là pas de soucis. Maintenant ma difficulté c'est que sur un des 3 répertoires je souhaite l'enregistrer sous une condition.

La condition c'est d'enregistrer le fichier avec le numéro de la semaine (c'est ok) qu'une fois par semaine donc :

- si le fichier "toto_Sem_24" est dèjà présent dans le répertoire alors

on enregistre pas

sinon on enregistre

Il y a une macro avant l'enregistrement qui met à jour des données. Donc la macro peut être lancée plusieurs fois dans la semaine mais je veux l'enregistrer une seule fois par semaine dans un répertoire précis.

J'ai du mal à coder cette condition ...

Voila mon code non abouti et surtout en test :

Sub save_as()
'
' save_as Macro
num_sem = Sheets("Feuil1").Range("J1").Value

MsgBox num_sem

Application.DisplayAlerts = False

    ChDir "R:\03 - Pilotage BU\Global TEM\02 - Recrutement"
    ActiveWorkbook.SaveAs Filename:= _
        "R:\03 - Pilotage BU\Global TEM\02 - Recrutement\toto.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

     ChDir "R:\00 - Commun\003 - Commun RH\REPORTING RH"
    ActiveWorkbook.SaveAs Filename:= _
        "R:\00 - Commun\003 - Commun RH\REPORTING RH\toto.xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

     if

     ChDir "R:\00 - Commun\003 - Commun RH\REPORTING RH\ARCHIVES\2018"
    ActiveWorkbook.SaveAs Filename:= _
        "R:\00 - Commun\003 - Commun RH\REPORTING RH\ARCHIVES\2018\toto_" & num_sem & ".xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

     End If

Application.DisplayAlerts = True

End Sub

Merci pour votre aide.

Hello,

A tester.

Sub save_as()
Dim Num_sem As Integer
Dim Rep_1 As String
Dim Rep_2 As String
Dim Rep_3 As String
Num_sem = Sheets("Feuil1").Range("J1").Value
Rep_1 = "R:\03 - Pilotage BU\Global TEM\02 - Recrutement"
Rep_2 = "R:\00 - Commun\003 - Commun RH\REPORTING RH"
Rep_3 = "R:\00 - Commun\003 - Commun RH\REPORTING RH\ARCHIVES\2018"
ActiveWorkbook.SaveAs Filename:=Rep_1 & "\toto.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
ActiveWorkbook.SaveAs Filename:=Rep_2 & "\toto.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
If Dir(Rep_3 & Num_sem & ".xlsm") <> "" Then
    MsgBox ("Le fichier existe déjà")
    Exit Sub
    Else: ActiveWorkbook.SaveAs Filename:=Rep_3 & Num_sem & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End If
End Sub

D'où est repris le toto.xlsm ? Accepte tu les écrasements d'enregistrement sur les Rep 1 et 2 ?

Cordialement,

Bonjour,

Merci pour la réponse ça fonctionne

Rechercher des sujets similaires à "enregistrer condition"