Excel2003 - possible to lock/protect individual cell(s)? maybe wit

R

Rich

Hello,

Is it possible to lock/secure individual cells with VBA code so that
contents can't be changed? Specifically - formulas? Or am I restricted to
password protecting the entire workbook (read only mode)?

I would like to be able to enter data without having to unprotect the
workbook each time, but protect cells that contain formulas. Any advice
appreciated on the best way to secure my project with the least amount of
inconvenience.

Thanks,
Rich
 
T

Tom Ogilvy

each cell has a locked property. when the sheet is protected (not the
workbook), each cell who has it locked property selected is protected.
 
R

Rich

Thank you for your reply. I found the Lock property in Format Cells. But
when I add protection -- the Locked Cells and unlocked cells are checked by
default. I also noticed that all the cells are checked as locked by default.
Is there a setting somewhere to make the cells unlocked by default?

When I protect the sheet - I cannot edit any of the cells. How can I secure
only specified cells while I can still edit other cells in a given sheet?

Thank you.
 
R

Rich

Actually, I think I am starting to get the hang of worksheet security. But I
am thinking that if I want to unlock a range of cells I could probably do
that in a VBA loop

dim rng as range, i as integer, j as integer
Set rng = range("C10:G100")
For = 1 to rng.rows.count
for j = 1 to rng.Columns.Count
rng(i,j).Locked = False
Next
Next
 
T

Tom Ogilvy

If doing it manually, click on the gray button at the intersection of the row
and column headers - this selects all the cells

then use format =>cells to change the locked to unlocked. then select the
cells you want locked using the ctrl key if they are not contiguous and marke
them as locked
or do edit=>goto=>special and select formulas if it is the formulas you want
locked.

then repeat the format=>cells.

in code

cells.locked = false
Range("A1,B9:B30,F15:Z35").Locked = True
or
Cells.locked = False
Range("C10:G100").Locked = True
 
G

Gord Dibben

ActiveSheet.Range("C10:G100").Locked = False

To have all cells unlocked by default would require creating a Book.xlt Template
with that attribute.

Easiest just hit CTRL + a(twice in 2003) and format all cells to unlocked.

Then select those you want locked and format them.

Or vice versa


Gord Dibben MS Excel MVP
 
R

Rich

Yes. I forgot about the gray button. Thank you for all the advice. I have
it under control, finally.
 

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