在excel表格中使用vba引用单元格区域
步骤
1、首先我们打开一个工作样表作为例子。
2、使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:
Option Explicit
Sub Random()
Dim myRange As Range
Dim rng As Range
\'设置对单元格区域的引用
Set myRange = Worksheets("Sheet1").Range("A1:D5")
Set rng = Worksheets("Sheet1").Range("e1:i5")
\'对Range对象进行操作
myRange = "=rand()"
rng.Value = myRange.Value
myRange.Font.Bold = True
End Sub
3、这里我们设置了2个区域变量,直接声明它们是range类型,这样才能对其区域单元格进行引用。如果去掉类型声明,那么过程将会报错需要对象。这点大家要注意。
Dim myRange
Dim rng 会报错。
4、我们先来设置以下区域单元格的范围,这里myRange是在sheet1工作表中的a1到d5的矩形连续单元格范围。而rng是同样sheet1工作表中的e1到i5的矩形连续单元格。
5、因为声明了range类型,所以我们这里直接可以对myRange变量进行赋值,使用=号直接赋值即可。由于我们赋值的是一个excel程序函数,所以要用双引号括起来。
6、接着重点是,如果要对这个区域内的单元格值进行引用,我们必须清楚写清楚是引用的两个区域的值value。写法就要这样
rng.Value = myRange.Value
7、最后我们可以得到正确的结果,在这两个区域中myRange是随机函数公式,而rng是固定的当次运行随机函数后的值。这里两个值不对应一致是因为在粘贴操作后rand()函数重新计算了一次的结果。
excel vba activesheet excel vba拆分工作簿 excel vba基本语法 vba清除选定单元格数据 vba清除列数据 vba激活sh版权声明
本文来自投稿,不代表本站立场,转载请注明出处。