VB6 两个listview对比删除出错,求助

PrivateSubCommand11_Click()DimiAsIntegerDimjAsIntegerWithListView1.ListItemsFori=0ToL... Private Sub Command11_Click()
Dim i As Integer
Dim j As Integer

With ListView1.ListItems
For i = 0 To ListView1.ListItems.Count - 1
With ListView2.ListItems
For j = ListView2.ListItems.Count - 1 To i + 1 Step -1
If ListView2.ListItems(j).Text = ListView1.ListItems(i).Text Then
' .RemoveItem i
ListView1.ListItems.Remove i
End If
Next j
End With
Next i
End With
End Sub

提示If ListView2.ListItems(j).Text = ListView1.ListItems(i).Text这行出错。求解决方法!!!谢谢
展开
 我来答
哭者唱悲歌6
2009-05-17
知道答主
回答量:30
采纳率:0%
帮助的人:20.3万
展开全部
不能这样写的,你把listview1中的一项删除了, ListView1.ListItems.Count的值就变了,for循环的上下界在运行时是不能变的,所以会报错

建议:建个数组,用来保存你要删除的选项值,每找到一个便把选项值保存到数组,等全部for循环完毕,集中删掉
匿名用户
2009-05-20
展开全部
假如你其它代码已经全部写完
....
listview1.ListItems.Add , ,xlapp.worksheets(1).range("a5")'这个地方必须使用listview的add方法来确定行的首元素而下面紧跟的 则是行的第二个元素 赋内容方法则是不同的
listview1.ListItems(1).SubItems(1) =xxx
'第一行的第二个元素(含首元素)
这两行通常一块使用
....
如果代码没全部完成 情看下面
首先需要引用Microsoft Excel Object Library
如果是VB6的话,是工程-引用-Microsoft Excel 11.0 Object Library
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式