上一章给大家分享了关于Range对象的一些属性,包括这些属性的举例说明,今天继续给大家分享一下关于Range对象的具体操作。

举个例子假如你面前有一碗白米饭,那么单元格就相当于是这个大碗Value就是装在这个大碗中的白米饭。

代码1:

Sub test()

Worksheets(“sheet2”).Range(“B2”).Value = “你好”

Worksheets(“sheet2”).Range(“B4”) = “你好”

End Sub

注意:Value是Range对象的默认属性可以省略。

excel VBA中的Range对象如何操作和设置?-天天办公网

1.怎么统计单元格的个数,行数、列数?

需要统计单元格的个数的时候需要使用到Count这个属性。

注意:我这里面在复习一下前面分享的UsedRange的作用(表示工作表中已经使用的单元格区域)

excel VBA中的Range对象如何操作和设置?-天天办公网

最终的结果如下:

excel VBA中的Range对象如何操作和设置?-天天办公网

下面简单地解释以下代码:

excel VBA中的Range对象如何操作和设置?-天天办公网

代码2:

Sub test()

Dim i As Integer, j As Integer, k As Integer, j1 As Integer, k1 As Integer

i = Worksheets(“sheet2”).Range(“A1:G10”).Count

j = Worksheets(“sheet2”).Range(“A1:G10”).Rows.Count

k = Worksheets(“sheet2”).Range(“A1:G10”).Columns.Count

j1 = Worksheets(“sheet2”).UsedRange.Rows.Count

k1 = Worksheets(“sheet2”).UsedRange.Columns.Count

Worksheets(“sheet2”).Range(“H4”) = i

Worksheets(“sheet2”).Range(“H5”) = j

Worksheets(“sheet2”).Range(“H6”) = k

Worksheets(“sheet2”).Range(“I5”) = j1

Worksheets(“sheet2”).Range(“I6”) = k1

End Sub

2.怎么获取单元的当前地址?

获取地址需要使用属性Address

代码:

Sub test()

Dim i As Variant

Dim j As Range

Set j = Worksheets(“sheet2”).Range(“B2”)

i = j.Address

Worksheets(“sheet2”).Range(i).Value = “往往往往”

End Sub

下面解释一下代码:

excel VBA中的Range对象如何操作和设置?-天天办公网

优化后的代码:

excel VBA中的Range对象如何操作和设置?-天天办公网

代码:

Sub test()

Dim i As Variant

i = Worksheets(“sheet2”).Range(“B2”).Address

Worksheets(“sheet2”).Range(i).Value = “1111往往往往”

End Sub

3.单元格的复制Copy

基本格式:要复制的单元格.copy 目标单元格(复制的值要写进去的单元格)

代码:

Sub test()

Worksheets(“sheet2”).Range(“B3”).Copy Worksheets(“sheet2”).Range(“A9”)

End Sub

excel VBA中的Range对象如何操作和设置?-天天办公网

注意:如果复制的单元格区域大于目标单元格的区域时,目标单元格可以只写最开始的第一个单元格。

4.剪切单元格要使用Range对象的Cut方法

代码:

Sub test()

Worksheets(“sheet2”).Range(“B3:B5”).Cut Worksheets(“sheet2”).Range(“A3”)

End Sub

excel VBA中的Range对象如何操作和设置?-天天办公网

5.删除单元格或者删除单元格所在的行或者列

删除行要使用到Range对象的属性EntireRow

删除列要使用到Range对象的属性EntireColumn

代码:

Sub test()

Worksheets(“sheet2”).Range(“B3”).Delete

Worksheets(“sheet2”).Range(“B3”).EntireRow.Delete

Worksheets(“sheet2”).Range(“B3”).EntireColumn.Delete

End Sub

excel VBA中的Range对象如何操作和设置?-天天办公网