VBA range.resize的意义。

Subk()'resize的作用Range("b1:e5")="b1e5"Range("b1:e3")="34"Range("b1:e5").Resize(3,4).Va... Sub k() 'resize的作用
Range("b1:e5") = "b1e5"
Range("b1:e3") = "34"
Range("b1:e5").Resize(3, 4).Value = "34"
End Sub复制代码
请问,第3行与第4行的结果是一样的,那么resize存在的意义是什么?
展开
 我来答
syx54
推荐于2018-03-08 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2746万
展开全部
虽然你这两个的代码结果一样的,但是并不能说resize存在的没有意义了?
正是因为resize的应用才会有相同的结果,假使你在下面那行代码去掉resize,用:
Range("b1:e5").Value = "34"
还能一样吗?

注意:
上面那行区域是:("b1:e3") -------- 3行4列
下面那行区域是:("b1:e5"),-------- 5行5例如,正是用了resize(3,4)才缩小到3行4列。这这正好说明了resize的作用。
追问
这个例子完全可以不用resize,那么什么情况下才有必要用resize?
追答
看清楚了,提问题!
难道我说了这个例子完全可以不用resize?
匿名用户
2012-10-01
展开全部
resize是vba中的一个功能,它提供了一种定义区域的方法,在vba中还是有用的。
在上面的代码中意义不大,只是告诉你,给同一个区域赋值的2个途径而已。

比如:
我们班有人名字叫“张三”,
你说:我们班的张三 与 张三 效果是一样的。

但编程中,使用resize有时可读性更强、更灵活,
比如:
某区域要扩大或缩小的范围需要根据实际计算结果确定而不能在编程时确定,这时使用resize就方便了,因为它可以把计算结果作为参数,即括号中的数可以是变量,这个(或2个)变量在前面被赋予某个计算结果,那么程序就可以按计算结果变化区域了。
(个人体会,仅供参考)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xj9697
2012-10-06 · 超过10用户采纳过TA的回答
知道答主
回答量:97
采纳率:0%
帮助的人:34.8万
展开全部
改变选择范围
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zx001z7d53
2012-10-01 · TA获得超过2万个赞
知道大有可为答主
回答量:2.4万
采纳率:52%
帮助的人:5641万
展开全部
改变选择范围
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式