Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 检查数据验证的地址范围_Vba_Excel - Fatal编程技术网

Vba 检查数据验证的地址范围

Vba 检查数据验证的地址范围,vba,excel,Vba,Excel,给定一个包含多个数据验证的工作表,我想编写一段vba代码来遍历这些范围 我知道ActiveCell.SpecialCells(xlCellTypeAllValidation).Address返回所有范围的地址。例如,如果$A$1:$C$4有一个类型为xlValidateWholeNumber的验证,$E$8:$G$9有一个类型为xlvalidatextlength的验证,ActiveCell.SpecialCells(xlCellTypeAllValidation)。Address返回$A$1:

给定一个包含多个数据验证的工作表,我想编写一段vba代码来遍历这些范围

我知道
ActiveCell.SpecialCells(xlCellTypeAllValidation).Address
返回所有范围的地址。例如,如果
$A$1:$C$4
有一个类型为
xlValidateWholeNumber
的验证,
$E$8:$G$9
有一个类型为
xlvalidatextlength
的验证,
ActiveCell.SpecialCells(xlCellTypeAllValidation)。Address
返回
$A$1:$C$4,$E$G$9
。然后我不知道如何操纵这个结果来研究
$A$1:$C$4
,然后
$E$8:$G$9
,以打印范围及其验证细节(类型、错误标题…)

有人能告诉我是否有一个函数可以分割
地址的结果吗


否则,是否有其他方法来完成所有数据验证

下面的代码将提醒每个单独的单元格“块”:

Dim rng As Range, a as Range

On Error Resume Next
Set rng = ActiveCell.SpecialCells(xlCellTypeAllValidation)
On Error Goto 0

If Not rng Is Nothing Then
    For Each a In rng.Areas
        MsgBox a.Address(false,false)
    Next a
Else
    MsgBox "No validation found"
End If