返回列表 上一主題 發帖

[發問] checkbox&optionbutton值問題

[發問] checkbox&optionbutton值問題

本帖最後由 ayubbs 於 2014-12-16 01:22 編輯

不好意思,因在站內搜尋數小時,實在找不到userform下的checkbox的值的抓取
到textbox中的文章,可能小妹笨拙,只好再向各位先進請教用法

因自已測試時vba碼套用的很亂檔案中即未有附上,想請大家指導用法
版上找的到文章多為sheet下應用,但小妹想將此功能套用於userform下
的textbox下,想請就指導如何抓取選擇後的值的方式。

謝謝大家真的很不好意思,也不夠用心,學了很久一直有很多的地方搞不懂

q1.rar (18 KB)



1.為點選後手動輸入,清除
2.為點選後自動加入
3.為點選後手動加入,清除
4.為點選後自動新增
請多多指教

回復 2# stillfish00


    謝謝解答解決了使用惑
可否請教第四例這二句語法的意思為想多了解應用

If .Value Then
        s = IIf(s = "", .Caption, s & ";" & .Caption)  


另有測試一法 點選完後自動關閉userform
  1. Private Sub CheckBox5_Click()
  2.   UpdateTextBox4
  3. userform2.hide
  4. End Sub
複製代碼
如果有一堆的CheckBox只能使用手動方式一個一個增加

謝謝
請多多指教

TOP

回復 2# stillfish00


    大大可否再請教,在測試TEXTBOX中如果沒輸入值時,抓取該LABLE的值,但抓的時候竟只取的
    到LABLE.1的控制項的名稱已使用了.CAPTION可是就無法取得值,想再向大大請教可是語法那裡
不正確

LABLE.gif

另附檔中有另一COMBOBOX的問題,COMBOBOX是否可有像LISTBOX一樣的選取資料後可將該
列其它資料導出至TEXTBOX中及進行修改OR刪除的動作



謝謝不好意思又提出一堆問題,最近很著迷學習控制項,謝謝大家

lable.rar (15.28 KB)
請多多指教

TOP

回復 4# GBKEE


謝謝G大,小妹的功力還不夠寫出物件類別模組,會持續加油多爬文摸索練習中



像圖中建立群組後對控制項有什麼特別用意,不就不能個別使用了嗎?
請多多指教

TOP

回復 7# stillfish00


    謝謝大大的指導,另於combobox使用中,如清單原始為空時,無法執行
    如表單一開始預建立時都會為無資料時就A欄為空,需修改那部份不造成不
   能判讀,另執行刪除後combobox.list 並不會更新,已刪除資料還是保留在
   list中,且a欄能限制不可輸入相同的資料如 aaa 已存在請重新輸入

謝謝版大   
刪除資料後沒有清空combox及textbox值,我於刪除動作後加上 combbox1 = "" 於刪除後可清空值,但;仍
未解決list更新問題。
Private Sub CommandButton1_Click()
  Dim oFind As Object
  
  With Sheets("Sheet1")
    Set oFind = .Range("A:A").Find(what:=ComboBox1.Value, LookIn:=xlValues, lookat:=xlWhole)
    oFind.EntireRow.Delete
    ComboBox1.Value = ""  End With
End Sub
label 跟 lable 真是奇妙 ^^ 謝謝版大不嗇指導
請多多指教

TOP

回復 9# GBKEE


真的很謝謝GB大大每次幫忙小妹解決問題,實在是很汗顏,學習VBA一段時間了,很多應用都做的不好,
真需要用上時,常常只能求助,買了一堆書想了解應用,但書中的解說實在多數於實際應用時有很大的差異
謝謝版大不厭其煩幫忙解決問題。
其中有一段 不太能了解意思,如下紅字部份

16.Private Sub ComboBox1_Change()

17.    Dim AR, i As Integer

18.    AR = Array(TextBox1, TextBox2, TextBox3)

19.    With ComboBox1

20.        If .ListIndex > -1 Then

21.            For i = 0 To UBound(AR)

22.                AR(i).Value = .List(.ListIndex, i + 1)

23.            Next

24.            '一堆的的控制項寫不完

25.           ' TextBox1 = .List(.ListIndex, 1)     '這幾行不論是註解掉及未註解都不影響正常作業,他的作用為?

26.           ' TextBox2 = .List(.ListIndex, 2)
27.           ' TextBox3 = .List(.ListIndex, 3)
28.        End If

29.    End With

30.End Sub


另實在很不好意思,有一工作上的急需,可否請版大指點如何修改



在分類資料中要重覆輸入的字時無法將資料輸入至資料庫,按下新增後自動清除
資料庫不會新增資料,及LISTBOX.2也不會顯示。
在設定中並未有看過濾重覆項目的地方,不知如何修改能實現功能
比如 原來已有C+於清單2了,要再加一個C+上去同時顯示於清單2上,但其內容有不同只有清單名稱相同
謝謝版大~
  1. Private Sub CommandButton10_Click()
  2.     With UserForm1
  3.         If ListBox1.Text = "" Then
  4.             MsgBox "您還未選定品項喔~", vbCritical + vbOKOnly, "請輸入"
  5.             .TextBox12.SetFocus
  6.             Exit Sub
  7.         End If
  8.         mycase = Trim(.TextBox12.Text)
  9.         If mycase = "" Then
  10.             MsgBox "請於輸入分類清單欄內輸入要新增分類名稱~", vbCritical + vbOKOnly, "請輸入"
  11.             .TextBox12.SetFocus
  12.             Exit Sub
  13.         Else
  14.            
  15.             .ListBox2.AddItem mycase
  16.             .TextBox12.Value = ""
  17.             .TextBox12.SetFocus
  18.             .Frame1.Enabled = False
  19.             .Frame3.Enabled = False
  20.             .CommandButton6.Enabled = False
  21.             .CommandButton11.Enabled = False
  22.             .CommandButton12.Enabled = True
  23.         End If
  24.     End With
  25.     Call CommandButton12_Click
  26. End Sub



  27. Private Sub CommandButton12_Click()
  28.     Dim cell As Range, rng As Range
  29.     With UserForm1
  30.         .Frame1.Enabled = True
  31.         .Frame3.Enabled = True
  32.         .CommandButton6.Enabled = True
  33.         .CommandButton6.Enabled = True
  34.         .CommandButton11.Enabled = True
  35.         .CommandButton12.Enabled = True
  36.         myname = .ListBox1.Text
  37.         Set cell = Sheets("資料庫").Columns("A").Find(myname, lookat:=xlWhole)
  38.         If cell Is Nothing Then
  39.             er = Sheets("資料庫").[B65536].End(3).Row + 1
  40.             Sheets("資料庫").Cells(er, 1).Value = .TextBox1.Text
  41.             Sheets("資料庫").Cells(er, 2).Resize(.ListBox2.ListCount, 1) = .ListBox2.List
  42.             .TextBox1.Value = ""
  43.        Else
  44.             r1 = Split(d1(myname), "-")(0)
  45.             r2 = Split(d1(myname), "-")(1)
  46.             Set rng = Sheets("資料庫").Range("B" & r1 & ":B" & r2)
  47.             For i = 0 To .ListBox2.ListCount - 1
  48.                 Set cell = rng.Find(.ListBox2.List(i), lookat:=xlWhole)
  49.                 If cell Is Nothing Then
  50.                     r2 = r2 + 1
  51.                     Sheets("資料庫").Rows(r2).EntireRow.Insert
  52.                     Sheets("資料庫").Cells(r2, 2).Value = .ListBox2.List(i)
  53.                 End If
  54.             Next i
  55.         End If
  56.         Call UpdateBox
  57.         .CommandButton12.Enabled = False
  58.     End With
  59. End Sub
複製代碼
TEST4.rar (42.96 KB)
請多多指教

TOP

回復 9# GBKEE

謝謝版大

以下檔案供版大參考...因涉及工作隱私所以有設密碼~已私訊版大

謝謝~

各位先進老師不好意思先不要載附件~

demo.rar (76.36 KB)
請多多指教

TOP

        靜思自在 : 【生命在呼吸間】佛陀說:「生命在呼吸間。」人無法管住自己的生命,更無法擋住死期,讓自己永住人間。既然生命去來這麼無常,我們更應該好好地愛惜它、利用它、充實它,讓這無常、寶貴的生命,散發它真善美的光輝,映照出生命真正的價值。
返回列表 上一主題