我正在制作一段代码,让我的工作更轻松。我有一个宏,它将使用列的第一个名称自动创建名称范围:
NameRange1
Value1
Value2
Value3
Value4
Value5
我已经拥有的代码将创建一个名为“NameRange1”的名称范围,其值为1到5.
接下来我需要做的是使用先前创建的名称范围自动设置数据验证列表。每列中的第一个单元格将匹配给定的名称范围(已存在)。
所以,我需要的是:
我已经拥有的代码负责第二个要求的第一部分(即它为整个列设置数据验证,忽略标题,使用其行的标题作为名称范围):
Sub SetDataValidation()
'
Dim rNo1 As Range
With Selection.Validation
Set rNo1 = ActiveSheet.Cells(1, ActiveCell.Column)
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=" & rNo1.Value
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
Cells(1, 1).EntireRow.Validation.Delete
End With
End Sub