View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Juan Pablo González Juan Pablo González is offline
external usenet poster
 
Posts: 226
Default Validation.Modify Runtime Error in Protected Worksheet

You can use the UserInterfaceOnly property of the Protect method like

Sheets("YourSheet").Protect UserInterfaceOnly:=True
'your code here

But your current workaround is ok too. And with the sheet protected you
won't be able to modify the validation...

--
Regards

Juan Pablo González

"Kent Klingler" wrote in message
...
Thanks, but removing the xlBetween constant didn't work for me, I still

get
the run-time error. I did find a work-around by unprotecting the

worksheet
prior to executing the VBA statement. And then re-protecting the

worksheet
after executing the VBA statement. Not what I would call graceful,
certainly functional, and unfortunately leaves the worksheet unprotected

to
unwanted data entry for a split-second.

I'm certainly open to other suggestions, if there are any.

"Juan Pablo González" wrote in message
...
Remove the xlBetween constant.

Range("B19").Validation.Modify xlValidateList, xlValidAlertStop, ,
"=$L$6:$L$12"

worked fine for me

--
Regards

Juan Pablo González

"Kent Klingler" wrote in message
...
I've developed a fairly simple spreadsheet for the purpose of

collecting
information. In the worksheet are several pull-down lists created

using
the
datavalidationlist function in Excel. Based on the selection in one

of
pull-down, other pull-down list source ranges will be adjusted.

Everything works fine when the worksheet is unprotected, but when I

protect
the worksheet I get the following error message:

Run-time error '1004';
Application-defined or object-defined error

The code generating the error is:

Range("B19").Validation.Modify xlValidateList, xlValidAlertStop,

xlBetween,
"=$L$6:$L$12"

Cell B19 is a pull-down list created using the toolvalidation

function
and
being adjusted using the above VBA statement and "=$L$6:$L$12" is the

new
list source lookup range.

Any help with the problem will be appreciated.

Thanks in advance.