Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim a, b, chemin$, fichier$, wb As Workbook
a = Array(Me.Path, Me.Path) '2 chemins à adapter
b = Array("TABLEAU 1 POUR VBA.xlsm", "TABLEAU 2 POUR VBA.xlsm") '2 noms à adapter
chemin = IIf(Me.Path = a(0), a(1), a(0)) & "\"
fichier = IIf(Me.Name = b(0), b(1), b(0))
If Dir(chemin & fichier) = "" Then MsgBox "'" & chemin & fichier & "' introuvable !", 48: Exit Sub
On Error Resume Next: Set wb = Workbooks(fichier): On Error GoTo 0
If Not wb Is Nothing Then wb.Close False 'fermeture si ouvert
Me.SaveCopyAs chemin & fichier
If wb Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Workbooks.Open (chemin & fichier) 'réouverture
Me.Activate
End Sub