Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Validation.Modify Runtime Error in Protected Worksheet
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. |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Validation.Modify Runtime Error in Protected Worksheet
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. |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Validation.Modify Runtime Error in Protected Worksheet
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. |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
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. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Macro runtime 1004 error on opening worksheet | Excel Discussion (Misc queries) | |||
Macro error when worksheet is protected | Excel Discussion (Misc queries) | |||
error accessing a protected worksheet | Excel Worksheet Functions | |||
RUNTIME ERROR '1004' --- Select method of worksheet class failed | Excel Programming | |||
Excel VBA error on protected worksheet | Excel Programming |