和range的区别_【VBA】Range对象的常用方法属性(一)

在EXCEL中,我们无论怎么去处理数据,最后都离不开单元格,那么作为最常用的对象Range,我们肯定少不了接触关于他的方法和属性。今天来给大家介绍几个Range对象常用的方法属性。不懂什么是方法和属性的,戳链接了解:【VBA】浅谈对象、方法、属性

6d85671b331093b1c01ef585d1d823af.png

Value 值 它是Range的一个默认属性,通常我们给它赋值时,不需要写出他的属性,默认就是赋值,如,我给A1单元格赋值"sheet1",我们可以用如下方法表示。 range("A1").Value="sheet1" 或如下方法表示 range("A1")="sheet1" 如下动图,我分别用两种方式给A1和A2单元格赋值:

7af6f2dce644b6acb871f5f1a8e184b7.gif

两种方式都不会出错,但我们将其作为参数传递时,不加上他的属性,就可能出错,如,我要选中工作表的名字和A1单元格名字相同的工作表,就必须将属性写完全。 sheets(range("A1")).select 错误写法 sheets(range("A1").value).select 正确写法 如下动图:

6f633c10d25b19cddf245f91e33b3c94.gif

因此,在使用Value属性时,虽然有时候能省略,但是不建议省略。养成一个好习惯。

0ac2b781ee22e905dacf7642a0bb5f73.png

Select 选中 Activate 活动的 我为什么要讲这两个放一起说呢,因为他两有一些相似之处,但又不完全相同,有些区别。 如:我想要将A1单元格选中,我们可以这么表示 Range("A1").Select 也可以这么表示 Range("A1").Activate 如下动图:

2ceed6e9d92e04e7b1dbe90f9e742a65.gif

但是如果是要选中多个区域,如选中A1:A6

我们可以用如下表达方式

range("A1:A6").select

如果此时A1不是选择状态,我们也可以用

range("A1:A6").Activate

但如果A1单元格是选择状态的,我们这么运行就达不到我们想要的效果。那么我们原先选择的是什么区域,他就还是选择什么区域,只是被选中的单元格变成了左上角第一个单元格。

b1df3e67660acafc70051087593166f0.gif

我们可以看到,在我们使用Activate的时候,第一次没有选中A1单元格时,我们用range("A1:A6").Activate,选中了A1:A6单元格,第二次将A1改为A2时,运行代码,A1并没有被取消选中,还是选中的A1:A6,只是把活动单元格从A1变成了A2。不知道你们理解了没有,不理解的自己动手试试吧。

feefd7aefd25d5bd047a22bd736f110a.png

Copy 复制 Paste 粘贴 PasteSpecial 选择性粘贴 Copy与Paste方法,对应我们操作时的复制粘贴。在VBA里,对于Copy来说。他不用Paste,也能完成我们的粘贴。因为他自带一个参数(目的地),我们只需指定参数,他就粘贴过去了,所以对于单独的单元格来说,他没有单独的Paste方法,但是可以借助工作表的Paste方法。本文给大家讲讲两种方法的用法

b9ab45136e5cf0c8bc47fd83555a60e8.png

如:我要将A1:A3单元格的值复制到C1:C3单元格。可用如下方法: range("A1:A3").copy range("C1") 也可用如下方法: Range("A1:A3").Copy Range("C1").Select ActiveSheet.Paste 复制后不指定参数,选中想要粘贴的单元格区域,然后用工作表的Paste方法粘贴过去。

a030de816bfa6301d28ea2fe16ad7db1.gif

怎么样,Copy方法会用了吗?在日常使用中,如果真的要用Copy,建议直接指定参数将数据粘贴过去,不建议用工作表的Paste方法。但是有人可能会问了,Range对象没有Paste方法,那怎么进行选择性粘贴呢,如,我只想粘贴值过去,或者只想粘贴格式过去?下面来看下一个方法。在我们这个例子中,也可用如下方法将A1:A3复制到C1:C3,用法如下: Range("A1:A3").Copy Range("C1").PasteSpecial 不指定任何参数,默认全部粘贴过去,但有时候,我们要进行选择性粘贴,就要给他指定参数,他一共有四个参数。 分别 对应 选择 性粘贴的四 个部分,如下图

4f3b5e62953d3d20ea312b07d4bde690.png

bfb8d9de70293099c3c20198de3a783e.png

具体参数,在我们需要输入参数的时候会自动显示参数列表,这里就不一一解释参数了,如果书写的时候,实在不知道用哪个参数,可以采用录制宏的方式进行参考。本文就暂时介绍这么几个方法和属性,关于Range对象更多的方法和属性,请继续关注后续文章。
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值