求教:VBA在Excel中删除行

DarrenFu1019 2013-04-28 12:22:28
我是刚接触VBA,遇到的问题是:
[IMG]http://img2081.poco.cn/mypoco/myphoto/20130428/12/17364878620130428121142042.jpg[/IMG]
目的:判断F列的数值,从第6行开始,删除F列中数值为“#VALUE!”的整行(F列的内容集中分为两块,第一块是数字,第二块是“#VALUE!”,以后皆为空白)
我的程序是:
Sub 调试6()
Dim i As Integer
Dim m As Integer
i = 6
Do While cells(i, 6).Value <> "#VALUE!"
i = i + 1
Loop
m = i
Do While cells(i, 6).Value = "#VALUE!"
i = i + 1
Loop
Rows("m:i").Delete
End Sub
运行过程中提示的错误:
[IMG]http://img2081.poco.cn/mypoco/myphoto/20130428/12/17364878620130428121236043.jpg[/IMG]

[IMG]http://img2081.poco.cn/mypoco/myphoto/20130428/12/1736487862013042812130507.jpg[/IMG]

分不多,但是我全部的家当,望不吝赐教
...全文
126 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
DarrenFu1019 2013-04-28
  • 打赏
  • 举报
回复
补充:F列的数值是来源于Excel自带的DATAVALUE函数和VLOOKUP函数
DarrenFu1019 2013-04-28
  • 打赏
  • 举报
回复
引用 5 楼 DarrenFu1019 的回复:
[quote=引用 4 楼 dsd999 的回复:] Rows("13:14").Delete 行要用数字。
必须要用数字吗?删除的时候我要先判断从哪行开始删除,以及删除几行,所以需要使用变量[/quote] 已经解决了,谢谢
DarrenFu1019 2013-04-28
  • 打赏
  • 举报
回复
引用 4 楼 dsd999 的回复:
Rows("13:14").Delete 行要用数字。
必须要用数字吗?删除的时候我要先判断从哪行开始删除,以及删除几行,所以需要使用变量
dsd999 2013-04-28
  • 打赏
  • 举报
回复
Rows("13:14").Delete 行要用数字。
DarrenFu1019 2013-04-28
  • 打赏
  • 举报
回复
引用 2 楼 dsd999 的回复:
Do While cells(i, 6).Value <> "#VALUE!" 改成 Do While cells(i, 6).Text <> "#VALUE!" 下面的都这样改。
谢谢版主,这个问题解决了。 只是运行到下面删除行的时候又出错了 Rows("m:i").Delete 我把这段程序修改成: Rows("m:i").Select Selection.ClearContents 试了一下还是不对,您再帮忙看看吧
dsd999 2013-04-28
  • 打赏
  • 举报
回复
Do While cells(i, 6).Value <> "#VALUE!" 改成 Do While cells(i, 6).Text <> "#VALUE!" 下面的都这样改。

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧