Yep, instead of using "Private Sub Workbook_BeforeClose(Cancel As Boolean)" you should use "Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)"