如果A Col有值,则使用以下代码创建下拉列表。 如何将否设置为默认值?
Dim myList As String, r As Range
myList = "Yes,No"
If w1.Range("A" & Rows.Count).End(xlUp).Address <> "$A$1" Then
For Each r In w1.Range("A2", w1.Range("A" & Rows.Count).End(xlUp))
If r.Value <> vbNullString Then
With r.Offset(, 2).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=myList
End With
If r.Offset(, 2).Value = "" Then r.Offset(, 2).Value = "No"
If r.Offset(, 2).Value = "" Then Split myList, ","
End If
Next r
End If
答案 0 :(得分:1)
应用 DV 时插入默认值:
取代:
With r.Offset(, 2).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=myList
End With
使用:
With r.Offset(, 2).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=myList
End With
r.Offset(, 2).Value = "No"
答案 1 :(得分:0)
验证下拉列表没有默认值。您可以使用“否”填充空单元格,并使用“否,是”作为列表。
与数据库不同,Excel不需要(默认情况下)启动新记录/行,因此默认值对Excel没有意义。鉴于此,只需用“否”填充所有空白单元格没有用,因为您不知道用户是否知道或打算选择“否”。
(对于数据库,用户将在物理上看到字段值,假设默认值为“No”,然后他们可以明确选择接受或更改它。)