0
我有幾個組合框都具有相同的值 - 「」,1-12。我試圖得到它,以便當用戶選擇一個項目時,所有其他項目消失。當選擇一個新項目時,它重新填充最後一個項目。從用戶窗體組合框中刪除項目
這就是我所擁有的。
Private Old182 As String
Private Sub ComboBox182_Change()
Dim i
Dim y
If ComboBox182 <> Old182 Then
For i = 182 To 193
If i <> 182 Then
If ComboBox182 <> Old182 Then
If ComboBox182 <> "" Then
Controls("ComboBox" & i).RemoveItem ComboBox182.Value
If ComboBox182 <> "" Then
If Old182 <> "" Then
Controls("ComboBox" & i).AddItem Old182
End If
End If
End If
End If
End If
Next
End If
Old182 = ComboBox182.Value
End Sub
我第一次運行,它會刪除第一項。比方說,我點擊1.它會刪除(1)。如果我點擊2,它會刪除(3)。我相信這是因爲它是通過索引值來刪除它。 1 =>「」,(1)。因此該數組是「」,2,3等2 =>(3)。如果演示不夠,我很抱歉。無論如何,我怎麼能得到它,以便它將從數組中刪除值,並重置數組,或者如何從數組中刪除值與數組匹配的值而不是索引等於索引?
組合框被通過一系列填充在我的excel表
我無法看到的是'.Clear方法',您應該在添加新元素之前使用它。你擁有所有你需要的東西 - 只需重新思考你的邏輯。 –
我試圖想出一種方法來正確包含您的建議。當我在removeitem行之後添加它時,會按照預期清除剩餘的框,但是,我只想清除一個項目。 –
您無法清除一個項目。您需要清除全部並再次添加新的一組正確的項目。 –