我是VBA的新手。我正在尝试编写一个清理实验中某些数据的脚本。我不断收到一个错误,提示“Object Required”,并突出显示了pold。有谁知道为什么?编译错误:对象必需VBA
至于脚本,我试着沿着一列参与者号码,并绘制出每个参与者的范围。每个参与者有大约30行,我想将它定义为数组中的值。
Sub Cleanthismofoup()
Dim pranges(1 To 50) As Long
Dim pbegin As Range
Dim pend As Range
Dim pold As Integer
Dim pnew As Integer
Dim pcell As Range
Dim pcounter As Long
Dim i As Long
Set pcell = Range("A1:A1")
Set pbegin = Range("A2:A2")
Set pold = Range("B2:B2").Value
pcounter = 0
'for every item, store value in pnew
' move down one line. Check pnew = pold
' if it is, do again. else create new range
For i = 1 To rngl
pcell = pcell.Offset(-1, 0)
pnew = pcell.Cells.Value
If pnnew <> pold Then pcell = pend
If pcell = pend Then
counter = counter + 1
pranges(counter) = pbegin
counter = counter + 1
pranges(counter) = pend
pbegin = pcell.Offset(-1, 0)
Else: pold = pnew
End If
i = i + 1
Next
结束子
哪一行遇到错误? – 2012-07-06 04:44:19
你似乎有'pnew'和'pnnew'的混合,但'pnnew'没有在任何地方声明。在模块顶部添加Option Explicit – barrowc 2012-07-11 00:57:14