有没有办法来操纵VBA中的数据validation中的每个项目?
我试图在VBA中做一个循环函数来select数据validation(22项)中的每个项目,并根据项目名称在报表上复制和粘贴。
我试图通过select不同的数据validation项目来查看语言,但没有注册。 有没有办法来操纵VBA中的数据validation中的每个项目?
有两种forms的DV。 一个使用如下单元格的列表:
另一个使用内部逗号分隔的列表,如:
这段代码将处理以下任一forms:
Sub IsDV() Dim s As String, r As Range, rng As Range s = "NO DV" On Error Resume Next With ActiveCell s = .Validation.Formula1 On Error GoTo 0 End With If s = "NO DV" Then MsgBox s Exit Sub End If If Left(s, 1) = "=" Then Set rng = Range(Mid(s, 2)) For Each r In rng MsgBox r.Value Next r Exit Sub End If ary = Split(s, ",") For Each a In ary MsgBox a Next a End Sub
编辑#1:
如图所示, Formula1
创build一个string。 如果该string以=符号开始,那么string的其余部分就是Address
。 所以我放弃了=符号并做出了一个范围。 知道范围让我抓住物品