Dans ce cas, sur la base de votre première idée. ( save copie as )
Considérant qu'une macro s'ouvre à l'ouverture du fichier avec un code dans le Workbook open()
Vous pourriez utilisez une ligne pour vérifier si vous êtes sur l'original ou la copie ?
Dans le Workbook open du style : ( chemin à personnaliser avec vos infos)
IF ThisWorkbook.Path ="C:\users\mesdocuments\sauvegarde\" Then
Exit sub
End if
Ceci va vérifier à l'ouverture du fichier si le fichier ce trouve dans sauvegarde et si oui il quittera la macro.
Idem pour les évenements sur les feuilles (change ) lignes à ajouter en début de l'évenement pour que la macro soit annulée.