如何用VB删除LIST表中的重复项
我想用VB编一个软件,软件有2个列表框LIST这里面都有大量的数据,得上千上万的,设置一个按钮,我想要实现点击这个按钮,LIST1与list2对比,将list1中含有li...
我想用VB编一个软件,软件有2个列表框LIST 这里面都有大量的数据,得上千上万的,设置一个按钮,我想要实现点击这个按钮,LIST1与list2对比,将list1中含有list2的项全部删除,如何实现,谢谢大家最好有详细说明和程序的,我2级水平,别给我整的太难了。
展开
4个回答
展开全部
代码及注释如下:
Private sub main()
For i = 0 to List2.ListCount - 1'i是为了遍历list2中的所有条目
For j = List1.ListCount - 1 To 0 Step -1'j是为了遍历list1中的所有条目
doevents‘防止程序运行时假死
If List1.List(j) = List2.List(i) Then List1.RemoveItem j'两个list中的条目一次作比较,如果相同,那么就从list1中移除这个条目
Next
Next
end sub
Private sub main()
For i = 0 to List2.ListCount - 1'i是为了遍历list2中的所有条目
For j = List1.ListCount - 1 To 0 Step -1'j是为了遍历list1中的所有条目
doevents‘防止程序运行时假死
If List1.List(j) = List2.List(i) Then List1.RemoveItem j'两个list中的条目一次作比较,如果相同,那么就从list1中移除这个条目
Next
Next
end sub
2013-07-21
展开全部
Dim i as long, j as long
For i = 0 to List2.ListCount - 1
For j = List1.ListCount - 1 To 0 Step -1
doevents
If List1.List(j) = List2.List(i) Then List1.RemoveItem j
Next
Next
一楼的老兄内外层循环搞反了
For i = 0 to List2.ListCount - 1
For j = List1.ListCount - 1 To 0 Step -1
doevents
If List1.List(j) = List2.List(i) Then List1.RemoveItem j
Next
Next
一楼的老兄内外层循环搞反了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-21
展开全部
Private Sub Command1_Click()
Dim count%, temp%, i%, j%
For i = List1.ListCount - 1 To 0 Step -1
For j = List2.ListCount - 1 To 0 Step -1
If List1.List(i) = List2.List(j) Then
List1.RemoveItem i
End If
Next
Next
End Sub
Private Sub Form_Load()
Dim i%
For i = 1 To 10 'list1内生成10个数 例子
List1.AddItem i
Next
For i = 5 To 20 'list2内生成15个数 例子
List2.AddItem i
Next
End Sub
Dim count%, temp%, i%, j%
For i = List1.ListCount - 1 To 0 Step -1
For j = List2.ListCount - 1 To 0 Step -1
If List1.List(i) = List2.List(j) Then
List1.RemoveItem i
End If
Next
Next
End Sub
Private Sub Form_Load()
Dim i%
For i = 1 To 10 'list1内生成10个数 例子
List1.AddItem i
Next
For i = 5 To 20 'list2内生成15个数 例子
List2.AddItem i
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-21
展开全部
Private Sub Command1_Click()
Dim i, j As Long
For i = 0 To List1.ListCount - 1
DoEvents
For j = 0 To List2.ListCount - 1
If List1.List(i) = List2.List(j) Then List1.RemoveItem (i)
Next j, i
End Sub
数据越多速度越慢, DoEvents是为了防止在运行的时候程序假死。
Dim i, j As Long
For i = 0 To List1.ListCount - 1
DoEvents
For j = 0 To List2.ListCount - 1
If List1.List(i) = List2.List(j) Then List1.RemoveItem (i)
Next j, i
End Sub
数据越多速度越慢, DoEvents是为了防止在运行的时候程序假死。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询