excel中 vba编程错误
想要实现在sheet2中提取出sheet1中的第三列大于0的列可是一直报错一直把我的loopuntil那一句标黄,求大神帮忙解决下这个问题...
想要实现在sheet2中 提取出sheet1中的第三列大于0的列 可是一直报错一直把我的loop until 那一句标黄, 求大神帮忙解决下这个问题
展开
4个回答
展开全部
Private Sub Worksheet_selectionchange()
Dim a, b,s As Integer
s = Sheet1.UsedRange.Rows.Count
For a = 1 To s
If Sheet1.Cells(a, 3) > 0 Then
b = b + 1
Sheet2.Cells(b, 1) = Sheet1.Cells(a, 1)
Sheet2.Cells(b, 2) = Sheet1.Cells(a, 3)
End If
Next
End Sub
以上代码可以实现你需要实现的功能,已测试过,放心使用。O(∩_∩)O~
你的代码里面a=a+1,这个循环a没有设置上限,如果一直运行下去会报错。
我在你的a=a+1这个代码下面加了debug.print a 测试了一下,就卡死了。
a会一直循环增大到报错。
展开全部
如果你第三列都没有符合>0,就会出错了,前面加个On Error Resume Next就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个界面点【调试】看黄色条在哪一行,鼠标放在该行的变量上,看看变量的值是多少
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成 sheets("sheet1").cells(a,3) 试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询