excel VBA中出现运行时错误"1004“:应用程序定义或对象定义错误,该怎么办啊?
黄色部分是出错的地方,代码下面是提醒框,实在是看不出哪里出错了?希望哪位大侠帮帮我,谢谢啦。。。。还有在循环中是否能使用j=ActiveSheet.Cells(Rows....
黄色部分是出错的地方,代码下面是提醒框,实在是看不出哪里出错了?希望哪位大侠帮帮我,谢谢啦。。。。
还有在循环中是否能使用 j = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1 这样的语句了?因为我需要找到每一次通过高级筛选插入新值之后找到下一格空行以便复制新的内容,所有如果这个语句不行的话,我如何通过别的办法在每一次循环中判断sheet5中新的空行?
希望大虾们能能关注关注哈,小女子感激不尽啊!!! 展开
还有在循环中是否能使用 j = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1 这样的语句了?因为我需要找到每一次通过高级筛选插入新值之后找到下一格空行以便复制新的内容,所有如果这个语句不行的话,我如何通过别的办法在每一次循环中判断sheet5中新的空行?
希望大虾们能能关注关注哈,小女子感激不尽啊!!! 展开
4个回答
展开全部
将黄色代码部分修改为 copytorange:=rng
追问
这样设置之后,确实运行没有错误了,而且那个空行判断也是正确的,得到的结果也是我要的,真是高手啊,灰常非常感谢~~~~
但是为什么非要这样设置呢?
追答
因为你前面已经将 rng 这个变量定义为单元格了,而且也 set 这个变量为一个单元格了。所以这个变量就表示一个单元格。可直接用它代替 range。
而 range 也是表示一个单元格的,当时它的表示方法主要有这么几种:
1、range("a1") 直接在括号内加上双引号,然后加上单元格地址。
2、range("定义的名称") 在工作表中定义了名称后,可以直接在双引号内写上名称来代码名称所引用的区域,就像你代码中的 range("sheet1judgment") 里面的 judgment 也是一个名称吧?
3、
i=3
range("a" & i) 这样表示 a3 单元格,要注意range 只能是行号为变量,列号不能为变量。
主要就这样表示,当然还有其他一些表示方法。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上说的对,因为range()里面的是文本或者文本变量,但是你上面定义的rng是个range变量,可以直接作range用,加了个range()反而就会出错了
追问
谢谢你啊,我明白了~~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-03 · 知道合伙人旅游行家
关注
展开全部
感觉你是自动生成的宏,然后加了点语句。冗余很多,要不你把源文件和要求发给我,我试试改改。
QQ一把二零四六四灵刘三。
QQ一把二零四六四灵刘三。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请确认变量r的定义是否正确。
如果Sheet4的第4列末尾行数小于4,则导致循环变量d的无效。
如果Sheet4的第4列末尾行数小于4,则导致循环变量d的无效。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询