#1   Report Post  
Posted to microsoft.public.excel.misc
flow23
 
Posts: n/a
Default error trapping

I have the following macro. which works fine when the user type the password
correctly.

however if the user types the password incorrectly. it takes them to the VBA
code.

Is there a way around this?
sub unprotect()
' Application.CutCopyMode = False
Sheets("update").Visible = True
Sheets("update").Select
ActiveSheet.unprotect
Sheets("update").Select

ActiveSheet.Shapes("Label1").Visible = True
ActiveSheet.Shapes("Label2").Visible = True
ActiveSheet.Shapes("Label3").Visible = True
ActiveSheet.Shapes("Label4").Visible = True
ActiveSheet.Shapes("Label5").Visible = True
ActiveSheet.Shapes("Label6").Visible = True
ActiveSheet.Shapes("Label7").Visible = True

Sheets("update").Cells.Select
Selection.EntireColumn.Hidden = False
Sheets("fields").Visible = True
end sub

  #2   Report Post  
Posted to microsoft.public.excel.misc
Dave Peterson
 
Posts: n/a
Default error trapping

Maybe something like:

Option Explicit
Sub unprotect()
' Application.CutCopyMode = False

With Sheets("Update")
On Error Resume Next
.unprotect
On Error GoTo 0
If .ProtectContents _
Or .ProtectDrawingObjects _
Or .ProtectScenarios Then
'it's still protected
MsgBox "Nope!"
Else
.Visible = xlSheetVisible
.Shapes("Label1").Visible = True
.Shapes("Label2").Visible = True
.Shapes("Label3").Visible = True
.Shapes("Label4").Visible = True
.Shapes("Label5").Visible = True
.Shapes("Label6").Visible = True
.Shapes("Label7").Visible = True
.Cells.EntireColumn.Hidden = False

Sheets("fields").Visible = True
End If
End With
End Sub

flow23 wrote:

I have the following macro. which works fine when the user type the password
correctly.

however if the user types the password incorrectly. it takes them to the VBA
code.

Is there a way around this?
sub unprotect()
' Application.CutCopyMode = False
Sheets("update").Visible = True
Sheets("update").Select
ActiveSheet.unprotect
Sheets("update").Select

ActiveSheet.Shapes("Label1").Visible = True
ActiveSheet.Shapes("Label2").Visible = True
ActiveSheet.Shapes("Label3").Visible = True
ActiveSheet.Shapes("Label4").Visible = True
ActiveSheet.Shapes("Label5").Visible = True
ActiveSheet.Shapes("Label6").Visible = True
ActiveSheet.Shapes("Label7").Visible = True

Sheets("update").Cells.Select
Selection.EntireColumn.Hidden = False
Sheets("fields").Visible = True
end sub


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.misc
Dave Peterson
 
Posts: n/a
Default error trapping

PS. I wouldn't use Unprotect as the name of the subroutine, either. It may not
confuse excel/vba, but it could confuse me!

Dave Peterson wrote:

Maybe something like:

Option Explicit
Sub unprotect()
' Application.CutCopyMode = False

With Sheets("Update")
On Error Resume Next
.unprotect
On Error GoTo 0
If .ProtectContents _
Or .ProtectDrawingObjects _
Or .ProtectScenarios Then
'it's still protected
MsgBox "Nope!"
Else
.Visible = xlSheetVisible
.Shapes("Label1").Visible = True
.Shapes("Label2").Visible = True
.Shapes("Label3").Visible = True
.Shapes("Label4").Visible = True
.Shapes("Label5").Visible = True
.Shapes("Label6").Visible = True
.Shapes("Label7").Visible = True
.Cells.EntireColumn.Hidden = False

Sheets("fields").Visible = True
End If
End With
End Sub

flow23 wrote:

I have the following macro. which works fine when the user type the password
correctly.

however if the user types the password incorrectly. it takes them to the VBA
code.

Is there a way around this?
sub unprotect()
' Application.CutCopyMode = False
Sheets("update").Visible = True
Sheets("update").Select
ActiveSheet.unprotect
Sheets("update").Select

ActiveSheet.Shapes("Label1").Visible = True
ActiveSheet.Shapes("Label2").Visible = True
ActiveSheet.Shapes("Label3").Visible = True
ActiveSheet.Shapes("Label4").Visible = True
ActiveSheet.Shapes("Label5").Visible = True
ActiveSheet.Shapes("Label6").Visible = True
ActiveSheet.Shapes("Label7").Visible = True

Sheets("update").Cells.Select
Selection.EntireColumn.Hidden = False
Sheets("fields").Visible = True
end sub


--

Dave Peterson


--

Dave Peterson
  #4   Report Post  
Posted to microsoft.public.excel.misc
flow23
 
Posts: n/a
Default error trapping


Thanks

that works fab

Re. the name.. IT was only for demo. the macro is linked to a command button


"Dave Peterson" wrote:

PS. I wouldn't use Unprotect as the name of the subroutine, either. It may not
confuse excel/vba, but it could confuse me!

Dave Peterson wrote:

Maybe something like:

Option Explicit
Sub unprotect()
' Application.CutCopyMode = False

With Sheets("Update")
On Error Resume Next
.unprotect
On Error GoTo 0
If .ProtectContents _
Or .ProtectDrawingObjects _
Or .ProtectScenarios Then
'it's still protected
MsgBox "Nope!"
Else
.Visible = xlSheetVisible
.Shapes("Label1").Visible = True
.Shapes("Label2").Visible = True
.Shapes("Label3").Visible = True
.Shapes("Label4").Visible = True
.Shapes("Label5").Visible = True
.Shapes("Label6").Visible = True
.Shapes("Label7").Visible = True
.Cells.EntireColumn.Hidden = False

Sheets("fields").Visible = True
End If
End With
End Sub

flow23 wrote:

I have the following macro. which works fine when the user type the password
correctly.

however if the user types the password incorrectly. it takes them to the VBA
code.

Is there a way around this?
sub unprotect()
' Application.CutCopyMode = False
Sheets("update").Visible = True
Sheets("update").Select
ActiveSheet.unprotect
Sheets("update").Select

ActiveSheet.Shapes("Label1").Visible = True
ActiveSheet.Shapes("Label2").Visible = True
ActiveSheet.Shapes("Label3").Visible = True
ActiveSheet.Shapes("Label4").Visible = True
ActiveSheet.Shapes("Label5").Visible = True
ActiveSheet.Shapes("Label6").Visible = True
ActiveSheet.Shapes("Label7").Visible = True

Sheets("update").Cells.Select
Selection.EntireColumn.Hidden = False
Sheets("fields").Visible = True
end sub


--

Dave Peterson


--

Dave Peterson

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



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

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"