Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2486|回复: 7

[已解决]代碼簡化:刪除含有空白單元格的行

[复制链接]
发表于 2013-7-25 18:02 | 显示全部楼层 |阅读模式
求高手,如下代碼是刪除含有空白單無格行的,請問可以簡化嗎?

    Selection.SpecialCells(xlCellTypeBlanks).Select
    Selection.EntireRow.Delete
最佳答案
2013-7-25 18:10
Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-7-25 18:10 | 显示全部楼层    本楼为最佳答案   
Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
回复

使用道具 举报

发表于 2013-7-25 18:10 | 显示全部楼层
从我知道的知识里已经没的简化了 =、=
回复

使用道具 举报

 楼主| 发表于 2013-7-25 18:17 | 显示全部楼层
大灰狼1976 发表于 2013-7-25 18:10
Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete

我的代碼是:
Range("A1:A65536").Activate.Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete

但總是提示錯誤
求解!!!
擷取.PNG
回复

使用道具 举报

发表于 2013-7-25 18:19 | 显示全部楼层
Range("A1:A65536").Activate.Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
不对,要么Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
要么Range("A1:A65536").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
不能同时使用
回复

使用道具 举报

 楼主| 发表于 2013-7-25 18:24 | 显示全部楼层
大灰狼1976 发表于 2013-7-25 18:19
Range("A1:A65536").Activate.Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
不对,要么Sel ...

感謝!測試通過。

不過,能幫忙說明一下原因嗎,我實在不太懂。
回复

使用道具 举报

发表于 2013-7-25 18:29 | 显示全部楼层
Range("A1:A65536").Activate的意思是激活单元格区域,这是个完整的句子,后面不可以添加代码。
Selection是指你当前选中的区域,这两者完全不一样,不能混用
回复

使用道具 举报

发表于 2013-7-25 18:33 | 显示全部楼层
还有改进的余地,如果你的A列实际行数不多(与65536差太多)的话,可以将
Range("A1:A65536").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
改为
Range("A1:A" & [A65536].End(3).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
可以加速
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-21 00:40 , Processed in 0.498932 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表