我经历了各种各样的线程并获得了有关验证的几个提示。但我的代码仍然给我一个错误。这可能是一个愚蠢的错误,但我无法发现它。
Set val1range = projInfo.Range(projInfo.Cells(2, 23), projInfo.Cells(m, 23))
With Cells(rowN, 3).Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=" & val1range
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
我收到了1004错误。添加 应用程序定义或对象定义的错误。
如果我给出正确的公式,请告诉我吗?
答案 0 :(得分:2)
不确定这是否是唯一的错误,因为您发布的代码未定义projInfo
,m
或rowN
,但您的Add方法正在尝试连接字符串, "="
和范围对象val1Range
。 Range对象的默认属性是Value,因此实际上您将"="
与单元格的值或 content 连接而不是其地址(可能是您想要的)。
要修复,请更改此行:
.Add Type:=xlValidateList, Formula1:="=" & val1range
到此:
.Add Type:=xlValidateList, Formula1:="=" & val1range.Address