加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VBA中Range的用法

(2019-01-30 16:28:29)
标签:

vb

range

分类: 程序设计_VB

1.选择A1单元格,不做任何操作

Sub rangeTest()

    Range("a1").Select

End Sub

2.选择A1单元格,并且赋值“GIVE THANKS TO GOD”

Sub rangeTest()

    Range("a1") = "GIVE THANKS TO GOD"

End Sub

3.选择A1C5单元格,不做任何操作

Sub rangeTest()

    Range("a1", "c5").Select

End Sub

4.选择A1C5单元格,并且赋值“GIVE THANKS TO GOD”

这边选择A1C5有两种写法,上面的是逗号分隔是一种,下面的这种冒号分隔也是一种。

Sub rangeTest()

    Range("a1: c5") = "GIVE THANKS TO GOD"

End Sub

5.选择A1C5单元格和E5G6两个不连续的区域,不做任何操作

Sub rangeTest()

    Range("a1: c5,e5:g6").Select

End Sub

6.选择第一行,不做任何操作

Sub rangeTest()

    Range("1:1").Select

End Sub

7.选择第A列,不做任何操作

Sub rangeTest()

    Range("a:a").Select

End Sub

8.选择A5单元格,不做任何操作。但是具体变量需要替换成抽象变量

Sub rangeTest()

    Dim num As Integer

    Dim letter As String

    Let letter = "a"

    Let num = 5

    Range(letter & num).Select

End Sub

9.选择A1C5单元格,不做任何操作,具体变量需要替换成抽象变量

Sub rangeTest()

 

    Dim num1 As Integer

    Dim letter1 As String

    Dim num2 As Integer

    Dim letter As String

    Let num1 = 1

    Let letter1 = "a"

    Let letter2 = "c"

    Let num2 = 5

   

    Range(Range(letter1 & num1), Range(letter2 & num2)).Select

   

End Sub

10.复制A1单元格的数据到A2

Sub rangeTest()

    Range("a1").Copy Range("a2")

End Sub

11.现有一表格如下图,选择下图全部数据,具体变量只能使用A1

//upload-images.jianshu.io/upload_images/9823247-35d67f5b4163b25f.png

test.png

Sub rangeTest()

    Dim letter As String

    Dim num As Integer

    letter = "f"

    num = 1

    Range("a1", Range(letter & num).End(xlDown)).Select

End Sub

12.现有一表格与上图相似(并且单元格内均有数据,为规整的正方形或者长方形数据),选择下图全部数据,并且不管数据如何增加,运行代码均能选择所有数据

Sub rangeTest()

    Dim endNumber As Integer

    endNumber = Application.WorksheetFunction.CountA(Sheet1.Range("a:a"))

    Range("a1", Range("a" & endNumber).End(xlToRight)).Select

End Sub

13.现有表格如下图,请使用offset方法选择A19单元格

//upload-images.jianshu.io/upload_images/9823247-66a8806512fc52a6.png

test.png

Sub rangeTest()

    Range("a1").End(xlDown).Offset(1, 0).Select

End Sub

这边的offset有两个参数,第一个参数是上下的挪移,第二个参数是左右的挪移。
如下例:

offset(|A| , |B|) : 以选择单元格为起点,向下挪移A个单元格,向右挪移B个单元格。
offset(-|A| , -|B|) :
以选择单元格为起点,向上挪移A个单元格,想左挪移B个单元格。

依次类推。

今天range的用法小结暂告一个段落,其中提到的offsetEnd(xl...)的用法,在实际操作中常常会用到,而且特别方便。



作者:agape__
链接:https://www.jianshu.com/p/7324bd36726f
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有