VBA:使用下拉列表检测单元格中的值

时间:2015-06-11 12:55:48

标签: excel-vba drop-down-menu vba excel

我在使用下拉列表检测单元格中的值时遇到了一些问题。

当我运行下面的代码时,它只给我I列中的值0。列H包含多个Dropdown lists(由数据验证生成),其值可以是“是”或“否”:

Sub DropDownlistValue()

Dim Holidays As Worksheet

Dim Checkbox_RowCount As Long
Dim HolidayCount As Long

Set Holidays = ThisWorkbook.Sheets("Visning")

Checkbox_RowCount = Holidays.Cells(Holidays.Rows.Count, "H").End(xlUp).Row

For HolidayCount = 2 To Checkbox_RowCount
    If Not IsEmpty(Holidays.Range("H" & HolidayCount)) Then

        Holidays.Activate
        Holidays.Range("H" & HolidayCount).Select

        If ActiveCell = "YES" Then
            ActiveCell.Offset(0, 1) = 1
        Else
            ActiveCell.Offset(0, 1) = 0
        End If
    End If
Next HolidayCount

End Sub

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可能需要的是此行的更改:

If ActiveCell = "YES" Then

If Ucase(ActiveCell) = "YES" Then

还有一个提示 - 移动这一行:

Holidays.Activate

在你的循环之前/之外。