0

我有一个列表框,其中填充了一年中的月份,如下所示:

Private Sub UserForm_Initialize()
    Dim i As Integer

    For i = 1 To 12
        ListBox1.AddItem MonthName(i)
    Next

End Sub

然后我将选定的值存储为字符串。我感兴趣的是使用 i 的等效值而不是月份名称进行计算。

例如,如果用户选择了July ( i = 7),我想做的是存储第二个字符串,该字符串定义为所选字符串之前的月份,即i - 1在本例中为June ( i = 6)。

如何在代码中引用 i 的值而不是月份字符串的名称?

4

1 回答 1

1

使用 ListBox 的 ListIndex 属性,即

Debug.Print Listbox1.ListIndex + 1

随着索引从 0 开始递增 1

小心地假设上个月总是比选择的少1....如果用户选择“一月”会发生什么?

于 2012-09-20T12:23:34.623 回答