possible to record vba editing as a macro

G

Gizmo

Excel2003 and 2007

I have an application that has worksheet and workbook unprotection and
protection at the begining and end of every procedure. When I have to do any
debugging, everytime i change a view or click on a button my workbook and
sheets are reprotected.

Is there a way (Easy) to comment out all the protection while i'm debugging
and then un-comment it after i'm done?

I was thinking maybe a sub routine i can assign to a button.

Is it possible to use macro recorder inside the VBE?
 
G

Gord Dibben

Try disabling events while debugging.

Sub disable_events()
Application.EnableEvents = False
End Sub

Sub enable_events()
Application.EnableEvents = True
End Sub


Gord Dibben MS Excel MVP
 
G

Gizmo

Hi Gord,

I still want to be able to run the prucedures to make sure my "fixes" work.
I just don't want to have to unprotect after every button click.
 
D

Dave Peterson

Run Gord's disable_events procedure before you start your development work.

Do all your changes.

Run the enable_events when you're done making changes and ready to test.
 
G

Gizmo

Yea, I got that.

I was hopin to comment out the protection only and still be able to run
everything else.

Thank You
 
G

Gord Dibben

Don't know what your code is doing and how many sheets are affected.

Sounds like some of the code involves events if changing a view triggers
code.

You could run this macro when necessary.

Sub UnprotectAllSheets()
Application.ScreenUpdating = False
Dim N As Single
For N = 1 To Sheets.Count
Sheets(N).Unprotect Password:="justme" 'adjust to suit
'Sheet(N).UnProtect 'if no password
Next N
Application.ScreenUpdating = True
End Sub

Short of that I can't think of a way to achieve your "comment out" the
protection lines in all subs and modules.


Gord
 

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

Top