作者luckid (luckid)
看板Office
标题[算表] 储存格范围选取问题(左上至右下)
时间Tue Sep 27 23:18:03 2016
软体: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视为选取范围的最左上角,
往右下选取所有包含值的储存格范围,
还望前辈不吝指点迷津,十分感谢.
--
https://www.youtube.com/watch?v=B_CMmbFexbM
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.238.108.169
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1474989486.A.AD2.html
1F:推 s212gj: 可以先自定义range 09/27 23:21
※ 编辑: luckid (36.238.108.169), 09/27/2016 23:33:09
3F:→ luckid: 非常感谢前辈们指点,不使用UsedRange是因为若储存格被修改 09/27 23:34
4F:→ luckid: 例如长宽被改过,使用UsedRange会选取到,不管储存格有无值 09/27 23:34
6F:→ soyoso: 可以用range.end 09/27 23:35
7F:→ luckid: 非常感谢s大,我再试试看 09/27 23:37
8F:→ soyoso: 抱歉上面连结为右上最後有值至左下角最後有值的范围才是 09/27 23:54
9F:→ soyoso: 要抓右侧及下方有值(不限特定栏列range.end判断)的话 09/27 23:58
10F:→ soyoso: 以range.find的方式 09/28 00:00
11F:→ luckid: 非常感谢s大提供方式,屡次受您热心帮助,不胜感激 09/28 11:24
12F:→ soyoso: 也可用range.specialcells以常数(文字、数字)後在以最右下 09/28 12:53
13F:→ soyoso: 角,range("C1",取得的右下角的储存格) 09/28 12:54
14F:→ luckid: 非常感谢s大提供多种处理方式,小弟从中获益良多.再次感谢 09/29 10:24