一个excel工作表,如何判断哪些师傅设置了数据有效性。除了我们前面文章:《怎样取消和删除数据有效性的方法》中介绍的定位法以外,还可以使用VBA代码来判断是否有数据有效性设置。
第一,判断选取的单元格区域是否有数据有效性设置
步骤一:选择需要进行判断的单元格区域,比如A1:A5
步骤二:按ALT+F11组合键,打开VBE编辑器。
步骤三:单击“插入”→“模块”,在新建模块中复制下面的代码:
Sub数据有效性是否判断()
OnErrorGoTo错误
IfActiveCell.Validation.Type>0ThenMsgBox"选区存在数据有效性":ExitSub
错误:MsgBox"选区没有数据有效性"
EndSub
步骤四,按工具栏中的“运行”按钮。如果选择的单元格区域有数据有效性设置,那么弹出消息框:选区存在数据有效性。反之,消息框显示:选区没有数据有效性。
第二,判断一个单元格是否有数据有效性设置
参考上面介绍的方法,将代码改为:
Sub数据有效性是否判断()
OnErrorGoToerr
VT=Range("A7").Validation.Type
MsgBox"此单元格设置了数据有效性"
ExitSub
err:
MsgBox"此单元格没有设置数据有效性"
EndSub
代码解释:代码以A7单元格来举例的。其中用Validation.Type判断,如果Validation.Type发生错误,则没有设置,如果返回数字1―7,则有设置数据有效性。





