6 Сентябрь 2008

Как заполнить ComboBox

Combobox |  Таги: ,

Мне необходимо было реализовать ввод пользователем даты, уже не помню что это была за дата, но задача была и я ее одолел.

Как это сделать?

Все просто, я использовал элемент – ComboBox, но не просто, а еще и автоматически его наполнял данными уже во время работы программы.

Данный пример Вам покажет как можно использовать циклы при работе с ComboBox.

Option Explicit
Dim strYear As String
Dim strMonth As String
Dim strDay As String

Private Sub Combo1_Click()
Dim i As Long
strYear = Combo1.Text
Combo2.Enabled = True
Combo3.Enabled = False
Combo2.Clear
Combo3.Clear
    For i = 1 To 12
        Combo2.AddItem Format$(i, "00")
    Next
Combo2.Text = ""
End Sub

Private Sub Combo2_Click()
Dim i As Byte
Combo3.Clear
strMonth = Combo2.Text
Combo3.Text = ""
Combo3.Enabled = True

If strMonth = "02" Then
    For i = 1 To 28
            Combo3.AddItem Format$(i, "00")
    Next
Else
    If strMonth = "01" Or strMonth = "03" Or strMonth = "05" Or strMonth = "07" _
        Or strMonth = "08" Or strMonth = "10" Or strMonth = "12" Then
        For i = 1 To 31
            Combo3.AddItem Format$(i, "00")
        Next
    Else
        For i = 1 To 30
            Combo3.AddItem Format$(i, "00")
        Next
    End If
End If
End Sub

Private Sub Combo3_Click()
strDay = Combo3.Text
Label1 = strYear & "/" & strMonth & "/" & strDay
End Sub

Private Sub Form_Load()
Dim i As Integer
Combo2.Enabled = False
Combo3.Enabled = False

For i = 1900 To 2010
    Combo1.AddItem Format$(i, "00")
Next
End Sub

После выбора значения во всех трех элементах ComboBox результат выводится на метку.



У нас куча комментариев (4) на запись “Как заполнить ComboBox”

Почему бы Вам не высказать свое мнение! Позвольте нам узнать, что Вы думаете...

  1. 1 On 15.09.2008, Александр Витер said:

    А почему не использовали TDateTimePicker? У него единственный недостаток, что его нет по умолчанию в системной папке. Но если макрос делается для конкретного пользователя, то можно этому пользователю посоветовать какой файл куда засунуть.

  2. 2 On 15.09.2008, Александр said:

    Если Вы хотите реализовать на VBA, с удовольствием размещу Вам макрос.

  3. 3 On 01.05.2012, AlexIs said:

    Размести, пожалуйста, макрос.

  4. 4 On 01.05.2012, Alex said:

    Размести, пожалуйста,макрос=)

Оставить комментарий

Я не робот.