我有一個旋轉按鈕和一個兩個列表框。我已經設置了旋鈕的最小和最大值。我已經有一個按鈕,它將數據從列表框1移動到列表框2,但我想設置基於旋轉按鈕移動數據的限制。 例如: 如果旋轉按鈕值是2,那麼只有2項可添加到listbox2如何在條件中使用SpinButton
注:我已經掛了旋轉按鈕,一個文本框
我有一個旋轉按鈕和一個兩個列表框。我已經設置了旋鈕的最小和最大值。我已經有一個按鈕,它將數據從列表框1移動到列表框2,但我想設置基於旋轉按鈕移動數據的限制。 例如: 如果旋轉按鈕值是2,那麼只有2項可添加到listbox2如何在條件中使用SpinButton
注:我已經掛了旋轉按鈕,一個文本框
聲明你移動一個變量,然後每次項目,將變量值增加1.因此,下次單擊按鈕移動項目時,只需將變量值與SpinButton's
值進行比較即可。例如(未經測試)
Dim nMoved As Long
Private Sub CommandButton1_Click()
If nMoved < (VAL(TextBox1.Text) + 1)
'
'~~> Code to move items from LB1 to LB2
'
nMoved = nMoved + 1
Else
MsgBox "Max items that can be moved from LB1 to LB2 reached."
End If
End Sub
從評論
後續需要只有當你匹配的項目在LB計算在您的結核病情況下使用.ListCount
。我從你的帖子中瞭解到,用戶不應該能夠將更多項目移入LB中,而不是TB中指定的項目。無論如何,似乎你的查詢是排序的。
關於你的第二條評論。
您需要使用下面的代碼遍歷LB項目,然後在counter
等於TB值時退出循環。例如
For i = 0 To (ListBox1.ListCount - 1)
If i = (Val(TextBox1.Text) - 1) Then Exit For
'
'~~> Code to move items from LB1 to LB2
'
End If
Next i
謝謝大家..我終於得到了答案
Dim ct As Integer
Dim ictr As Long
Dim jctr As Integer
jctr = CInt(Me.TextBox1.Value)
If jctr = ListBox2.ListCount Then
MsgBox "Maximum limit has been reached. You cannot add more players"
Exit Sub
End If
For ictr = jctr To 1 Step -1
Me.ListBox2.AddItem Me.ListBox1.List(ictr)
Me.ListBox1.RemoveItem ictr
Next ictr
這將根據旋轉值中的輸入來選擇項目數量。但是如果列表框2中已有項目,則上面的代碼將項目添加到它。例如:如果旋轉值是3並且box2中已經有一個項目,則添加所有按鈕將3個項目添加到box2。這是一個錯誤,因爲box2中的總項目應該是3,而不是4。我該如何調試? – Vidhi
你是如何從LB1移動數據LB2? –
我選擇每個項目並將其添加到listbox2使用循環 – Vidhi
jctr = CInt(Me.TextBox1.Text)這將給我在文本框中設置的值。如果想檢查一個條件,如果數據輸入listbox2> jctr錯誤信息 – Vidhi