VB如何删除list中的选项

先生成了一个list:A B C D AB AC AD BC BD CD ABC ABD ACD BCD ABCD
现在我要删除list中所有同时含有BC的选项,应如何实现
上午有高手给我写了一段程序:
Private Sub Command1_Click()
For i = 0 To List1.ListCount - 1
If InStr(List1.List(i), "BC") > 0 Then List1.RemoveItem i
Next
End Sub
不过有两个问题:
1.删掉item i后,i以后的item都往前移了一位,导致删除时,会跳一个数再检查。
2.我这个程序实际是需要在VBA里编写,转成VBA后总是有问题,我已经把list1都改成了listbox1了
再次请高手赐教

代码别人写了,我就不写了,这样肯定有问题;
具体步骤:

1,找到所有"不含"BC的项,添加到数组(或者另外一个listbox)
2,清空原listbox
3,把数组项目依次添加到listbox即可.
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-07-07
哦,我的疏忽
For i = 0 To List1.ListCount - 1
If InStr(List1.List(i), "BC") > 0 Then List1.RemoveItem i
Next
第一行改成如下即可
For i = List1.ListCount - 1 To 0 Step -1
第2个回答  2009-07-07
For i = List1.ListCount - 1 to 0 step -1
If InStr(List1.List(i), "BC") > 0 Then List1.RemoveItem i
Next
第3个回答  2009-07-07
我给你写的你咋不看?
晕死。本回答被提问者采纳
相似回答