Deactivate / Reactivate the Paste Function in excel




I have a macro that deactivates the paste function in excel.
The re-activation of the paste function occurs before the file is
close (beforeclose), see below.
I have applied this to multiple workbooks, but I noticed that when I
have multiple workbook open, if I close one workbook then the paste
function is effective switch back on. Is there a way around this?

Instead of beforeclose could I trigger the re-activation only when
excel is shut down completely?

Thank you

Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Enable the menu:
Application.CommandBars("Edit").Controls(3).Enabled = True
Application.CommandBars("Edit").Controls(4).Enabled = True
Application.CommandBars("Edit").Controls(5).Enabled = True
Application.CommandBars("Edit").Controls(6).Enabled = True
' Enable the commandbar:
Application.CommandBars("Standard").Controls(7).Enabled = True
Application.CommandBars("Standard").Controls(8).Enabled = True
Application.CommandBars("Standard").Controls(9).Enabled = True
Application.CommandBars("Standard").Controls(10).Enabled = True
' Enable the shortcut keys:
Application.OnKey "^c"
Application.OnKey "^v"
Application.OnKey "^x"
Application.CommandBars("Cell").Enabled = True

End Sub


Not really, but you could include a check that count the number of workbooks
open before you run this code. If it is only one then you know it is the
last one?


If Workbooks.Count = 1 then
'Run your code
End if

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question