vba代码封装DLL 出错

2016-08-16 16:11
     arr = Sheets("学生表").Range("A1").CurrentRegion
     For x = 2 To UBound(arr)
       If arr(x, 1) <> 1 Then
        strSQL = "insert into cp values(" & "'" & arr(x, 2) & "'" & "," & "'" & arr(x, 3) & "'" & ")"
        cn.Execute strSQL
        Cells(x, 1) = 1
       End If
    Next
    
上面的代码,在VBA中运行正常,我把代码复制到VB中封装成DLL,执行到arr 这就报错,
谁知道上述代码在VB 中要怎么改

回复讨论(解决方案)

Sheets要制定对象吧
Sheets要指定对象吧
Sheets对象,在VB里如何指定啊,VBA里不需
可能在VBA中实在当前的books中检索可以找到,但是在VB中可能不知道你搜索的是哪个books。
workbooks(文件名)

试试,大概是这样,不一定准确。
你这种代码封装成DLL也没办法调用,最好的办法是使用net制作office外接程序,再实现你想要的功能,.net也有VB,你有VBA基础,学习起来很快的