Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6
Default Testing for validation property

I would like to test if a cell is validated using a list. However,
the Validation property does not exist by default - it seems that only
validated cells have this property. The code below, therefore,
results in a "Application-defined or object-defined error" when you
change the value of a non-validated cell. I would be grateful to
know what the best way to run this test is. I guess you could use 'On
Error', although this seems hacky.

Many thanks

Jon


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Validation.Type = xlValidateList Then
MsgBox "Do something"
End If




End Sub
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6
Default Testing for validation property

For the record, this is the only method found using a google search.
There must be a better way!

Dim mycel As Range
Dim vald As Variant
Set mycel = Range("D2")
On Error Resume Next
vald = mycel.Validation.Type
On Error GoTo 0
If vald < Empty Then
MsgBox "yes the cell have validation"
Else
MsgBox "no no, the cell is general."
End If


On 2 May, 10:48, jrpfinch wrote:
I would like to test if a cell is validated using a list. *However,
the Validation property does not exist by default - it seems that only
validated cells have this property. *The code below, therefore,
results in a "Application-defined or object-defined error" when you
change the value of a non-validated cell. * I would be grateful to
know what the best way to run this test is. *I guess you could use 'On
Error', although this seems hacky.

Many thanks

Jon

Private Sub Worksheet_Change(ByVal Target As Range)

* * If Target.Validation.Type = xlValidateList Then
* * * * MsgBox "Do something"
* * End If

End Sub


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,593
Default Testing for validation property

Seems pretty simple (easy) to me, how easy do you want it? Put it in a
function, and you have a one-liner.

--
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)

"jrpfinch" wrote in message
...
For the record, this is the only method found using a google search.
There must be a better way!

Dim mycel As Range
Dim vald As Variant
Set mycel = Range("D2")
On Error Resume Next
vald = mycel.Validation.Type
On Error GoTo 0
If vald < Empty Then
MsgBox "yes the cell have validation"
Else
MsgBox "no no, the cell is general."
End If


On 2 May, 10:48, jrpfinch wrote:
I would like to test if a cell is validated using a list. However,
the Validation property does not exist by default - it seems that only
validated cells have this property. The code below, therefore,
results in a "Application-defined or object-defined error" when you
change the value of a non-validated cell. I would be grateful to
know what the best way to run this test is. I guess you could use 'On
Error', although this seems hacky.

Many thanks

Jon

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Validation.Type = xlValidateList Then
MsgBox "Do something"
End If

End Sub



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Modify the IgnoreBlank property of the Validation object susiew32 Excel Programming 4 January 8th 08 07:24 PM
Range Validation property not working w/ Protected worksheet KES[_2_] Excel Programming 0 October 3rd 07 05:54 AM
Validation Testing through list Matt Pierringer Excel Programming 7 March 14th 07 12:26 PM
Formula1 Property of Validation Object to refer to function name [email protected] Excel Programming 2 March 30th 06 12:53 AM
Testing for Cell Validation djrforb Excel Programming 5 September 30th 04 11:55 PM


All times are GMT +1. The time now is 01:53 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"