Allow VBA code to change a locked cell??

P

Paul Kraemer

Hi,

I am using Excel 2007. I have written some VBA code that sets the values in
certain cells using code like the following:

Worksheets("MySheet").Range("A5") = MyValue

This code works when my worksheet is not protected and cell A5 is not
locked. When I protect the worksheet (with A5 locked), my code does not
work. I get run-time error '1004' - "The cell or chart that you are trying
to change is protected and therefore read-only".

I'd like to keep the cell locked (so users cannot edit it), but I do want my
VBA code to be able change the value. Do I have to temporarily unlock the
cell (using VBA) before my code attempts to make a change and then relock the
cell it when my code is done? Or is there an easier way to do this?

Thanks in advance,
Paul
 
P

Paul

I think you'll have to unprotect the sheet prior to the change and reprotect,
rather than unlocking the cell and locking it again.
 
M

mgandrud

I ran into the same problem yesterday.

The following code seems to work except for sheets that have char
objects in them.

Sheets("MySheetName").Protect UserInterfaceOnly:=True

I have found that additional arguments can be added like this:

Sheets("MySheetName").Protect UserInterfaceOnly:=True
DrawingObjects:=False

I do not fully understand the behavior of these arguments.

I hope that this helps.
 

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