关于excel宏命令求助,目的是从上往下查找,选中一列中的空行
从B2格开始查找(B1为标题栏)代码如下:If[b2]=""Then[b2].SelectElseRange("B"&([b2].End(xlDown).Row+1))....
从B2格开始查找(B1为标题栏)代码如下:
If [b2] = "" Then
[b2].Select
Else
Range("B" & ([b2].End(xlDown).Row + 1)).Select
End If
现在的问题是,如果B3格不为空则执行ok,如果B3格为空则会选择到表格最底部而报错,而不是B3格,为何会这样?也就是执行到B3格会卡住,跳过B3之后又正常了。
虽然可以通过修改初始格暂时解决,但是我想弄明白到底是哪儿出问题了。请大侠不吝指点 展开
If [b2] = "" Then
[b2].Select
Else
Range("B" & ([b2].End(xlDown).Row + 1)).Select
End If
现在的问题是,如果B3格不为空则执行ok,如果B3格为空则会选择到表格最底部而报错,而不是B3格,为何会这样?也就是执行到B3格会卡住,跳过B3之后又正常了。
虽然可以通过修改初始格暂时解决,但是我想弄明白到底是哪儿出问题了。请大侠不吝指点 展开
展开全部
一般从最后一个单元格网上找到非空单元格。而不是从上往下找。
你的程序的出错的原因是:B3空白,往下就一下子找到了最后一行,再加一行就出错了。
你的程序的出错的原因是:B3空白,往下就一下子找到了最后一行,再加一行就出错了。
更多追问追答
追问
但是若是从下往上查找,B3不为空时不也应该选中最后一行吗? 为何又能正常执行(可以正确选中B4)呢?
追答
B3空白,往下就一下子找到了工作表的最后一行(2003的B65536),再加一行就出错了。
B3不是空白,往下就一下子找到了B列有数据的最后一行,再加一行就是空白行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |