For starters, totally do-able. I even added a way to disable the
right-click in any cell!

Step1: Write code in the "ThisWorkBook" module to declare a class to capture our events.
Step2: Write class to initialize and attach to Excel.
Step3: Write Close event and code to handle users response to the save question.
Step4: Enjoy!


VB Code:
  1. 'Name: 'ThisWorkBook' Object Module
  2. Option Explicit
  3.  
  4. Private RD As clsMyEvents
  5.  
  6. Private Sub Workbook_Open()
  7.     Set RD = New clsMyEvents
  8.     MsgBox "My Events Created!", vbOKOnly + vbInformation, "My Excel Events"
  9. End Sub
  10.  
  11.  
  12. 'Name: clsMyEvents
  13. 'Instancing: Private
  14. Option Explicit
  15.  
  16. Public goXL As Excel.Application
  17.  
  18. Public WithEvents MyEvents As Excel.Workbook
  19.  
  20. Private Sub Class_Initialize()
  21.     Set goXL = GetObject(, "Excel.Application")
  22.     Set MyEvents = goXL.ActiveWorkbook
  23. End Sub
  24.  
  25. Private Sub MyEvents_BeforeClose(Cancel As Boolean)
  26.     Dim iResp As Integer
  27.     iResp = MsgBox("RobDog888: Do you want to save your workbook?", vbYesNoCancel + vbQuestion, "My Excel Events")
  28.     If iResp = vbYes Then
  29.         goXL.ActiveWorkbook.Save
  30.         If goXL.ActiveWorkbook.Saved = True Then
  31.             MsgBox "Saved!", vbOKOnly + vbInformation, "My Excel Events"
  32.         Else
  33.             MsgBox "Error Saving Workbook!" & vbNewLine & "Sorry!", vbOKOnly + vbCritical, "My Excel Events"
  34.         End If
  35.     ElseIf iResp = vbCancel Then
  36.         Cancel = True
  37.     End If
  38. End Sub
  39.  
  40. Private Sub MyEvents_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  41.     MsgBox "No Right-Clicking!", vbOKOnly + vbInformation "My Excel Events"
  42.     Cancel = True
  43. End Sub
If you have any trouble I can attach the working Workbook example.

VB/Outlook Guru!