楼主:
luckid (luckid)
2016-09-27 23:18:03软件:MS Excel
版本:2007
参考档案下载连结:
https://drive.google.com/open?id=0B6tYnZny04P0cTAwRUpsTVI0X1U
参考档案图片示意:
http://imgur.com/a/tE7Fo
各位前辈好,
目前小弟在练习使用VBA选取范围,
若使用以下程式码,
可选取从C1开始算起至右下的连续储存格范围,
Range("c1").Resize(Cells(Rows.Count, 3).End(xlUp).Row, 1).Select
Range(Selection, Selection.End(xlToRight)).Select
但是如附档所示,
G栏,H栏及J栏的储存格虽含有资料,却无法被选取.
不知该如何改写程式码,
让程式可以将C1视为选取范围的最左上角,
往右下选取所有包含值的储存格范围,
还望前辈不吝指点迷津,十分感谢.
楼主:
luckid (luckid)
2016-09-27 23:34:00非常感谢前辈们指点,不使用UsedRange是因为若储存格被修改例如长宽被改过,使用UsedRange会选取到,不管储存格有无值
作者: soyoso (我是耀宗) 2016-09-27 23:54:00
抱歉上面连结为右上最后有值至左下角最后有值的范围才是要抓右侧及下方有值(不限特定栏列range.end判断)的话以range.find的方式
作者: soyoso (我是耀宗) 2016-09-28 12:53:00
也可用range.specialcells以常数(文字、数字)后在以最右下角,range("C1",取得的右下角的储存格)