Sub Sauvegarde()
Dim Chemin As String, Fichier As String
If ActiveWorkbook.Saved = True then exit sub
'Prise en compte des éléments variables
Chemin = "Z:\PROCESS\LABO\Produits Finis\Etudes Process en Cours\"
Fichier = Range("B2").Value & " " & Range("B3")
'Alertes utilisateur
'Type1 : Dossier non disponible
If Right(Chemin, 1) <> "\" Then MsgBox "Chemin non conforme , manque le \ à la fin ": Exit Sub
If Dir(Chemin & "\", vbDirectory) = "" Then MsgBox " Attention, Dossier de stockage non disponible": Exit Sub
'Type2 : Nom du fichier non renseigné
If Range("B2").Value= "" or Range("B3").value =''" Or Fichier = "" Then MsgBox " Attention, Merci de renseigner les cellules $B$2 et $B$3": Exit Sub
if dir(Chemin & Fichier)<>"" then
If MsgBox("Fichier déjà existant , voulez vous continuer", vbYesNo) = vbNo Then Exit Sub
end if
Application.DisplayAlerts = False ' Désactive les alertes en validant l'action par défaut
On Error Resume Next ' s'il y a une erreur sur la prochaine ligne , l'on exécute la ligne suivante
ActiveWorkbook.SaveAs Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
If Err Then ' si 'il y a eu une erreur
'échec de lecture ou d'écriture à partir d'un fichier.
If Err.Number = 1004 Then MsgBox "échec de lecture ou d'écriture à partir d'un fichier."
' Liste et message appropriés en fonction des erreur rencontrées
'Exemple
If Err.Number = 75 Then MsgBox "Erreur d'accès chemin/fichier (erreur 75)"
End If
On Error GoTo 0 'Rend la main au gestionnaire d'erreur
Application.DisplayAlerts = True ' Réactivation des alertes
End Sub