Vba 未设置对象变量
我不断得到一个“对象变量未设置”错误与此代码。我想偏移startcell单元格地址以获取相应列的平均值。但是,vba尝试偏移startcell的值,而不是单元格地址。如果有人能给我一些指导就太好了。谢谢Vba 未设置对象变量,vba,excel,Vba,Excel,我不断得到一个“对象变量未设置”错误与此代码。我想偏移startcell单元格地址以获取相应列的平均值。但是,vba尝试偏移startcell的值,而不是单元格地址。如果有人能给我一些指导就太好了。谢谢 Sub Macro1() Dim i As Integer Dim rowcount As Integer Dim startcell As Range startcell = ActiveSheet.Cells(2, 3).Address(False, Fa
Sub Macro1()
Dim i As Integer
Dim rowcount As Integer
Dim startcell As Range
startcell = ActiveSheet.Cells(2, 3).Address(False, False)
rowcount = Range("C2", Range("C2").End(xlDown)).Count
For i = 1 To rowcount
If Not Cells(i, 3).Value = Cells(i + 1, 3).Value Then
startcell.Offset(0, 11).Value = Application.WorksheetFunction.Average( _
Range(startcell.Offset(0, 8), Cells(i, 11)))
startcell = ActiveSheet.Cells(i + 1, 3).Address(False, False)
End If
Next i
End Sub
要在变量中保存给定的范围,可以使用其
地址
(字符串)或范围
对象。后者通常是首选,看起来这是你的初衷
Dim startcell As Range
....
Set startcell = ActiveSheet.Cells(2, 3) ' <-- Set a range object variable
....
Set startcell = ActiveSheet.Cells(i + 1, 3) ' <-- Set
Dim startcell作为范围
....
设置startcell=ActiveSheet.Cells(2,3)“要在变量中保存给定的范围,可以使用其地址(字符串)或范围
对象。后者通常是首选,看起来这是你的初衷
Dim startcell As Range
....
Set startcell = ActiveSheet.Cells(2, 3) ' <-- Set a range object variable
....
Set startcell = ActiveSheet.Cells(i + 1, 3) ' <-- Set
Dim startcell作为范围
....
设置startcell=ActiveSheet。单元格(2,3)对范围变量startcell使用Set
<代码>设置startcell=ActiveSheet.Cells(2,3)
我做了,但现在它给了我一个“需要对象”错误?使用设置startcell=ActiveSheet.Range(单元格(2,3),单元格(2,3))
为范围变量startcell使用设置
<代码>设置startcell=ActiveSheet.Range(单元格(2,3),单元格(2,3)
我做了,但现在它给了我一个“需要对象”的错误?使用设置startcell=ActiveSheet.Range(单元格(2,3),单元格(2,3))