零基础自学VBA

VBA第十一讲 单元格的选取

2017-04-07  本文已影响30人  肉丸子豆

VBA 单元格的选取

1.表示一个单元格选取

Sub tt()

Range("a1").Select

Cells(1).Select

End Sub

Sub tt1()

Range("b" & 1).Select

End Sub

Sub tt2()

Cells(2, "C").Select

End Sub

'注意上下两个sub语句的不同之处,针对range,括号内没有逗号,数字与字符串通过&相连,而且需要有空格,range语句有点列在前行在后的格式感觉。cells语句,行列之间有逗号,行在前,列在后。

犯过的错误有:&前后没有加空格,cells忘记s,行列之间没有加逗号。

一个单元格选取还可以表示为[a1].select

2.表示相邻的单元格区域

Sub tt3()

Range("a1:b2").Select

End Sub

Sub tt4()

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

End Sub

'range 语句中,括号内还有这种带有逗号的格式,逗号两边是range的区域顶点。

Sub tt5()

Range(Cells(1, 1), Cells(3.3)).Select

End Sub

也可以写为

Sub tt5()

Range(Cells(1, "a"), Cells(3, "d")).Select

End Sub

‘注意此处格式,range括号内没有引号。

下面是选中一个区域,然后此区域上下或者左右移动。

Sub tt6()

Range("c1:c10").Offset(0, -1).Select

End Sub

下面是先选中顶点,然后设定几行几列

Sub tt7()

Range("a1").Resize(4, 4).Select

End Sub

3.表示不相邻的单元格区域

Sub tt8()

Range("a1,b2:b4,c1").Select

End Sub

或者使用union()函数,将不同单元格连接。

Sub tt9()

Union(Range("a1"), Range("b2:b4"), Range("c1")).Select

End Sub

union() 函数使用例子

题干:想把A列1到10行中,所有的偶数行选出来

Sub tt10()

Dim x As Integer

Dim rg As Range

For x = 2 To 10 Step 2

If x = 2 Then Set rg = Cells(x, 1)

Set rg = Union(rg, Cells(x, 1))

Next x

rg.Select

End Sub

VBA中表示行

Sub tt11()

Rows("3").Select

End Sub

Sub tt11()

Rows("3:7").Select

End Sub

对于相邻行选取,以下两段代码结果一致

Sub tt13()

Range("1:2").Select

End Sub

Sub tt14()

Rows("1:2").Select

End Sub

对于不相邻的行选取用range()

Sub tt15()

Range("1:2,4:6").Select

End Sub

Sub tt12()

Range("c4:f3").EntireRow.Select

End Sub

VBA中表示列

列基本与行一致,只是换为columns,同理,对于不相邻的列,用range()函数

Sub tt16()

Range("A:B, E:F").Select

End Sub

重置坐标下的单元格表示方法

Sub tt18()

Range("b2").Range("c1") = 100

End Sub

代码意思为重置坐标后,新的顶点从A1变为B2,所以原来的C1就变成了D2,运行该代码后,发现单元格D2赋值100

正在选取的单元格区域

Sub tt17()

Selection.Value = 20

End Sub

代码意思为光标所在位置,也就是正在选取的单元格,赋值为20

上一篇下一篇

猜你喜欢

热点阅读