Vba 检查数据验证的地址范围
给定一个包含多个数据验证的工作表,我想编写一段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:
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