Excel数据验证不包括空白单元格错误

时间:2017-03-22 09:59:05

标签: excel vba excel-vba

我需要在数据验证中填充数据。我使用下面的代码。

Dim IntRow As Integer, IntLastRow As Integer
Dim Txt As String

With Sheet2

IntLastRow = .Cells(Rows.Count, 6).End(xlUp).Row


For IntRow = 10 To IntLastRow

    If Not IsEmpty(.Cells(IntRow, 6)) Then


        Txt = Txt & .Cells(IntRow, 6) & ","
    End If
Next IntRow
End With

Txt = Left(Txt, Len(Txt) - 1)


With Sheet1.Range("E4").Validation

.Delete
.Add _
Type:=xlValidateList, _
AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, _
Formula1:=Txt
End With

要在下拉列表中插入数百个数据。但是数据之间有空白单元格。这段代码工作正常,直到我保存它并再次重新打开它会产生错误。它在修复工作簿时自动删除数据验证。

1 个答案:

答案 0 :(得分:0)

如果使用手动列表,则长度限制为256个字符。如果您想在下拉列表中添加更多条目,则应参考范围。

例如,您可以使用已存在的列并通过以下方式忽略空白单元格: Simple way to remove blank cells dynamic dropdown list Excel