ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   detecting a proteced workbook (https://www.excelbanter.com/excel-programming/421084-detecting-proteced-workbook.html)

Fan924

detecting a proteced workbook
 
I can hide a single Worksheet.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Worksheets(1).Visible = False
' Worksheets(1).Visible = True
End Sub

I want to hide a single Worksheet, but only when the Workbook is
protected. How do I detect a protected workbook?

Mike H

detecting a proteced workbook
 
Hi,

Try this

With ActiveWorkbook
IsProtected = .ProtectStructure Or .ProtectWindows
End With

Mike

"Fan924" wrote:

I can hide a single Worksheet.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Worksheets(1).Visible = False
' Worksheets(1).Visible = True
End Sub

I want to hide a single Worksheet, but only when the Workbook is
protected. How do I detect a protected workbook?


Fan924

detecting a proteced workbook
 
Worksheets(4).Visible = False
If ActiveWorkbook.ProtectStructure = False Then
Worksheets(4).Visible = True
End If

But it doesn't work. After the workbook is protected, you are blocked
from changing the sheet visiility.

Mike H

detecting a proteced workbook
 
Hi,

You asked how to detect if a workbook is protected and the answer I gave you
does that. You must un-protect to hide the sheet then r-protect

Sub Sonic()
With ActiveWorkbook
isprotected = .ProtectStructure Or .ProtectWindows
End With
If isprotected Then
ActiveWorkbook.Unprotect
Sheets("Sheet1").Visible = False
ActiveWorkbook.Protect
Exit Sub
End If
End Sub

Mike

"Fan924" wrote:

Worksheets(4).Visible = False
If ActiveWorkbook.ProtectStructure = False Then
Worksheets(4).Visible = True
End If

But it doesn't work. After the workbook is protected, you are blocked
from changing the sheet visiility.


Mike H

detecting a proteced workbook
 
Perhaps your looking for something like this

Sub Sonic()
With ActiveWorkbook
isprotected = .ProtectStructure Or .ProtectWindows
End With
If isprotected Then
ActiveWorkbook.Unprotect
Sheets("Sheet1").Visible = False
ActiveWorkbook.Protect Structu=True
Else
Sheets("Sheet1").Visible = True
End If
End Sub

Mike

"Mike H" wrote:

Hi,

You asked how to detect if a workbook is protected and the answer I gave you
does that. You must un-protect to hide the sheet then r-protect

Sub Sonic()
With ActiveWorkbook
isprotected = .ProtectStructure Or .ProtectWindows
End With
If isprotected Then
ActiveWorkbook.Unprotect
Sheets("Sheet1").Visible = False
ActiveWorkbook.Protect
Exit Sub
End If
End Sub

Mike

"Fan924" wrote:

Worksheets(4).Visible = False
If ActiveWorkbook.ProtectStructure = False Then
Worksheets(4).Visible = True
End If

But it doesn't work. After the workbook is protected, you are blocked
from changing the sheet visiility.



All times are GMT +1. The time now is 01:15 AM.

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