Hi Wichien,
No need for VBA to do this. When saving, use SaveAs and click the Options button. There is a checkbox "Always Create Backup" which will do what you want.
If you must do this through VBA, in the code module for ThisWorkbook try,
---begin VBA---
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs FileName:=ThisWorkbook.Name, CreateBackup:=True
Application.DisplayAlerts = True
End Sub
---end VBA---
This should do what you want. Please repost if you need something different.
Thanks,
Jay