ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Disable Save/Save As - not working? (https://www.excelbanter.com/excel-discussion-misc-queries/169155-disable-save-save-not-working.html)

Silena K-K

Disable Save/Save As - not working?
 
Hi Gord

I followed your steps and have the following code in VB but now when I use
"ctrl s" or F12 to test that Save/Save As doesn't work it, crashes Excel.
Any
ideas why? Silena

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ThisWorkbook.Saved = True
ThisWorkbook.Close

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Saved = True

End Sub


Jim Rech[_2_]

Disable Save/Save As - not working?
 
In place of this:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
ThisWorkbook.Saved = True
ThisWorkbook.Close
End Sub

I think all you need is:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
Cancel = True
End Sub

Leave the other sub as is. None of this will work if macros are not
enabled, so this is not hard to defeat.

--
Jim
"Silena K-K" wrote in message
...
| Hi Gord
|
| I followed your steps and have the following code in VB but now when I use
| "ctrl s" or F12 to test that Save/Save As doesn't work it, crashes Excel.
| Any
| ideas why? Silena
|
| Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
| ThisWorkbook.Saved = True
| ThisWorkbook.Close
|
| End Sub
|
| Private Sub Workbook_BeforeClose(Cancel As Boolean)
| ThisWorkbook.Saved = True
|
| End Sub
|



Silena K-K

Disable Save/Save As - not working?
 
Thanks Jim for help on the 'save' issue.

I found your reply to disabling the copy command earlier this year ...

Sub DisableCopyCtrl()
Dim Ctrls As CommandBarControls
Dim Ctrl As CommandBarControl
Set Ctrls = CommandBars.FindControls(, 19)
For Each Ctrl In Ctrls
Ctrl.Enabled = False
Next
End Sub

....but haven't been able to get it to work. I pasted it into a general
module and saved it (not sure how to "enable" other than save??)

Can you help with this? Thanks Silena


"Jim Rech" wrote:

In place of this:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
ThisWorkbook.Saved = True
ThisWorkbook.Close
End Sub

I think all you need is:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
Cancel = True
End Sub

Leave the other sub as is. None of this will work if macros are not
enabled, so this is not hard to defeat.

--
Jim
"Silena K-K" wrote in message
...
| Hi Gord
|
| I followed your steps and have the following code in VB but now when I use
| "ctrl s" or F12 to test that Save/Save As doesn't work it, crashes Excel.
| Any
| ideas why? Silena
|
| Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
| ThisWorkbook.Saved = True
| ThisWorkbook.Close
|
| End Sub
|
| Private Sub Workbook_BeforeClose(Cancel As Boolean)
| ThisWorkbook.Saved = True
|
| End Sub
|




Jim Rech[_2_]

Disable Save/Save As - not working?
 
Like all code it has to be run to do something<g.

Since a sub named Auto_Open will execute automatically when Excel opens a
workbook you can cause my sub to be run like this:

Sub Auto_Open()
DisableCopyCtrl
End Sub

This can go in the same standard module. Users can disable macros though.
If they do this code will not run.

--
Jim
"Silena K-K" wrote in message
...
| Thanks Jim for help on the 'save' issue.
|
| I found your reply to disabling the copy command earlier this year ...
|
| Sub DisableCopyCtrl()
| Dim Ctrls As CommandBarControls
| Dim Ctrl As CommandBarControl
| Set Ctrls = CommandBars.FindControls(, 19)
| For Each Ctrl In Ctrls
| Ctrl.Enabled = False
| Next
| End Sub
|
| ...but haven't been able to get it to work. I pasted it into a general
| module and saved it (not sure how to "enable" other than save??)
|
| Can you help with this? Thanks Silena
|
|
| "Jim Rech" wrote:
|
| In place of this:
|
| Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
| Boolean)
| ThisWorkbook.Saved = True
| ThisWorkbook.Close
| End Sub
|
| I think all you need is:
|
| Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
| Boolean)
| Cancel = True
| End Sub
|
| Leave the other sub as is. None of this will work if macros are not
| enabled, so this is not hard to defeat.
|
| --
| Jim
| "Silena K-K" wrote in message
| ...
| | Hi Gord
| |
| | I followed your steps and have the following code in VB but now when I
use
| | "ctrl s" or F12 to test that Save/Save As doesn't work it, crashes
Excel.
| | Any
| | ideas why? Silena
| |
| | Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
| Boolean)
| | ThisWorkbook.Saved = True
| | ThisWorkbook.Close
| |
| | End Sub
| |
| | Private Sub Workbook_BeforeClose(Cancel As Boolean)
| | ThisWorkbook.Saved = True
| |
| | End Sub
| |
|
|
|




All times are GMT +1. The time now is 03:20 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com