+ -
当前位置:首页 → 问答吧 → 无效的过程调用或参数 求解

无效的过程调用或参数 求解

时间:2011-08-11

来源:互联网

Sub seven()
Dim d, k, t, arr, cel, r%, Arr1()
Set d = CreateObject("Scripting.Dictionary")
arr = [bo2:bv1001]
For Each cel In arr
    If cel <> "" Then
        d(cel) = d(cel) + 1
    End If
Next
k = d.Keys
t = d.items
For i = 0 To UBound(k)
    If t(i) > 7 And t(i) < 9 Then
        r = r + 1
        ReDim Preserve Arr1(1 To r)
        Arr1(r) = k(i)
    End If
Next
[bz2].Resize(r, 1) = Application.Transpose(Arr1)
End Sub


代码如上 运行老是提示 无效的过程调用或参数 请问错在哪?

作者: morrer   发布时间: 2011-08-11

arr = [bo2:bv1001]
这句前面加个Set试试
set arr = [bo2:bv1001]

作者: wdx223   发布时间: 2011-08-11

用F8逐句运行,看哪句出问题了

作者: doitbest   发布时间: 2011-08-11

Sub seven()
Dim d, k, t, arr, cel, r%, Arr1()
Set d = CreateObject("Scripting.Dictionary")
arr = [bo2:bv1001]
For Each cel In arr
    If cel <> "" Then
        d(cel) = d(cel) + 1
    End If
Next
k = d.Keys
t = d.items
For i = 0 To UBound(k)
    If t(i) > 7 And t(i) < 9 Then
        r = r + 1
        ReDim Preserve Arr1(1 To r)
        Arr1(r) = k(i)
    End If
Next
If r < 1 Then exit sub
[bz2].Resize(r, 1) = Application.Transpose(Arr1)
End Sub

[ 本帖最后由 白云2011 于 2011-8-11 22:48 编辑 ]

作者: 白云2011   发布时间: 2011-08-11

Sub seven()
Dim d, k, t, arr, cel, r%, Arr1()
Set d = CreateObject("Scripting.Dictionary")
arr = [a2:c10]
For Each cel In arr
    If cel <> "" Then
        d(cel) = d(cel) + 1
    End If
Next
k = d.Keys
t = d.items
For i = 0 To UBound(k)
    If t(i) = 8 Then
        r = r + 1
        ReDim Preserve Arr1(1 To r)
        Arr1(r) = k(i)
    End If
Next
If r > 0 Then [d2].Resize(r, 1) = Application.Transpose(Arr1)
End Sub

作者: adong.1111   发布时间: 2011-08-11