VB byref参数类型错误问题
Sube(a,b,c,ByRefdAsObject)Seta=NewADODB.ConnectionSetb=NewADODB.Recordseta.Open"Provi...
Sub e(a, b, c, ByRef d As Object)
Set a = New ADODB.Connection
Set b = New ADODB.Recordset
a.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\gongsi.mdb;persist security info=false"
c = "select sum(d) from 2013" 'd为数据库字断,计算字断总合
b.Open c, a, 1, 1
Text1.Text = b(0)
End Sub
Private Sub Command1_Click()
e cn, rs, sql, t1
End Sub 展开
Set a = New ADODB.Connection
Set b = New ADODB.Recordset
a.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\gongsi.mdb;persist security info=false"
c = "select sum(d) from 2013" 'd为数据库字断,计算字断总合
b.Open c, a, 1, 1
Text1.Text = b(0)
End Sub
Private Sub Command1_Click()
e cn, rs, sql, t1
End Sub 展开
3个回答
展开全部
我觉得错误的原因是最后一个参数应该传入string类型,而不是object对象类型。因为函数使用了SQL语句中的SUM方法求和,所以应该传入字段的名称。
追问
也不行,几中类型都用过了
追答
我看你解决了,想问你是怎么解决的呢?学习下!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我运行不会提示这个错误啊!
我是这样设置参数的 Call e(a, b, c, Form1)
你的t1是什么啊?textbox?
我是这样设置参数的 Call e(a, b, c, Form1)
你的t1是什么啊?textbox?
更多追问追答
追问
t1是d变量的值,2013是数据库表,t1是字断
select sum(d) from 2013
追答
那你有没有定义 t1为Object?
dim t1 as object
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
去掉ByRef 试试
更多追问追答
追问
一样,我试过其类型如:string integer等
追答
Sub e(a As Object, b As Object, c As Object, d As Object)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询