vba中如何去除combobox中的重复项
如图,vba中,我用A列做循环,把一中的班级添加到combobox1中,这样就出现两个1班,如何将combobox1列表中的重复项去除。或者在添加的过程如何跳过重复项!F...
如图,vba中,我用A列做循环,把一中的班级添加到 combobox1中,这样就出现两个1班,如何将combobox1列表中的重复项去除。或者在添加的过程 如何 跳过重复项!For i= 2 To N(N为行数)If Cells(i, 1)= "一中" ThenComboBox1.AddItem Cells(i, 3)
展开
1个回答
2018-06-09 · 知道合伙人互联网行家
关注
展开全部
Private Sub Command1_Click()
Dim i, k As Integer
Dim can As String
Dim san As String
For i = 0 To List1.ListCount - 1
For k = i + 1 To List1.ListCount - 1
can = List1.List(i)
san = List1.List(k)
If can = san Then List1.RemoveItem (k)
Next k
Next i
End Sub
调用的时候把这个过程改成自定义的就可以了!
Dim i, k As Integer
Dim can As String
Dim san As String
For i = 0 To List1.ListCount - 1
For k = i + 1 To List1.ListCount - 1
can = List1.List(i)
san = List1.List(k)
If can = san Then List1.RemoveItem (k)
Next k
Next i
End Sub
调用的时候把这个过程改成自定义的就可以了!
追问
出现错误,List1中剔除后,List1.ListCount会变小,最后k会超出List1.ListCount的实际数量,显示List1.List(k)索引无效。我用m替代List1.ListCount - 1:即For k = i + 1 To m,在If can = san Then List1.RemoveItem (k) 下面加上 m=m-1。前面没有问题了,但k到最后一项时,k已经循环到看m,但m变成变成了m-1,最后一项索引无效了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询