返回列表 上一主題 發帖

ComboBox選好文字後,欄位沒東西

回復 9# Jared
要了解事件程序的觸發時機
你的流程是在開啟表單時就讓ComboBox載入清單
選擇年、月後ComboBox3可判斷最後日期而載入清單
而TextBox1直接顯示當天日期
  1. Private Sub ComboBox2_Change()
  2. chang_day
  3. End Sub

  4. Private Sub ComboBox3_Change()
  5. chang_day
  6. End Sub

  7. Private Sub CommandButton1_Click()
  8. Dim A As Range
  9. If Application.CountBlank(Sheet10.Range("A5:A99")) = 0 Then
  10. Sheet10.[A100] = DateSerial(ComboBox1.Value, ComboBox2.Value, ComboBox3.Value) 'DateSerial為日期屬性
  11. Else
  12. Set A = [A5]
  13. Do Until A = ""
  14.     Set A = A.Offset(1, 0)
  15. Loop
  16. A.Value = DateSerial(ComboBox1.Value, ComboBox2.Value, ComboBox3.Value) 'DateSerial為日期屬性
  17. End If
  18. End Sub


  19. Private Sub UserForm_Initialize()
  20. For i = 2013 To 2020
  21.     ComboBox1.AddItem i
  22. Next
  23. For i = 1 To 12
  24.     ComboBox2.AddItem i
  25. Next
  26. For i = 1 To 31
  27.     ComboBox3.AddItem i
  28. Next
  29. b21 = Date

  30. End Sub
  31. Sub chang_day()
  32. If Val(ComboBox1) > 0 And Val(ComboBox2) > 0 Then
  33. ComboBox3.Clear
  34. For i = 1 To Day(DateSerial(ComboBox1.Value, ComboBox2.Value + 1, 0))
  35.    ComboBox3.AddItem i
  36. Next
  37. End If
  38. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 10# Jared


    不會啦ˇˇ
只是我比較雞婆而已..
話說 您的問題有解決了嗎?

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

回復 12# mark15jill

還沒有...>"<
還在找尋其他辦法
Jared

TOP

回復 11# Hsieh


感謝大大的協助
但是我不明白的是
執行這行程式
If Val(ComboBox1) > 0 And Val(ComboBox2) > 0 Then
就出現
螢幕截圖00050.jpg
不知道是什麼問題>"<
Jared

TOP

本帖最後由 Hsieh 於 2013-3-1 11:10 編輯

回復 14# Jared
刪除這兩個控制項ComboBox1、ComboBox2
重新設置,這可能你在重新命名後曾經有新增ComboBox控制項然後刪除
導致記憶中的殘留物件,當然這只是猜測,若有知道確實原因者,請不吝指正
學海無涯_不恥下問

TOP

        靜思自在 : 時時好心就是時時好日。
返回列表 上一主題