excel vba 至少一个参数没有被指定值
Sub统计1()''统计1MacroDimcnAsADODB.ConnectionDimrsAsADODB.RecordsetDimsql$,x$Setcn=NewADO...
Sub 统计1()
'
' 统计1 Macro
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql$, x$
Set cn = New ADODB.Connection
Set sr = New ADODB.Recordset
cn.Open "provider=microsoft.jet.oledb.4.0;extended properties='excel 8.0;hdr=yes'; " _
& "data source=" & ThisWorkbook.Path & "\成本项目汇总表.xls"
x = ActiveWorkbook.Worksheets("sheet1").[K1].Value
sql = "select 年月,科室代码,科室名称,成本项目名称,金额 from [sheet1$]"
sql = sql + "where 科室代码 like '" & x & "'"
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额;"
Set rs = cn.Execute(sql)
For i = 1 To rs.fields.Count
Sheet1.Cells(4, i) = rs.fields(i - 1).Name
Next i
Sheet1.[5:300].ClearContents
Sheet1.[a5].CopyFromRecordset rs
cn.Close
Set cn = Nothing
cn.Close
Set cn = Nothing
End Sub
运行至 Set rs = cn.Execute(sql) 时会提示错误:至少一个参数没有被指定值 请指导一下 展开
'
' 统计1 Macro
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql$, x$
Set cn = New ADODB.Connection
Set sr = New ADODB.Recordset
cn.Open "provider=microsoft.jet.oledb.4.0;extended properties='excel 8.0;hdr=yes'; " _
& "data source=" & ThisWorkbook.Path & "\成本项目汇总表.xls"
x = ActiveWorkbook.Worksheets("sheet1").[K1].Value
sql = "select 年月,科室代码,科室名称,成本项目名称,金额 from [sheet1$]"
sql = sql + "where 科室代码 like '" & x & "'"
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额;"
Set rs = cn.Execute(sql)
For i = 1 To rs.fields.Count
Sheet1.Cells(4, i) = rs.fields(i - 1).Name
Next i
Sheet1.[5:300].ClearContents
Sheet1.[a5].CopyFromRecordset rs
cn.Close
Set cn = Nothing
cn.Close
Set cn = Nothing
End Sub
运行至 Set rs = cn.Execute(sql) 时会提示错误:至少一个参数没有被指定值 请指导一下 展开
3个回答
展开全部
sql = "select 年月,科室代码,科室名称,成本项目名称,金额 from [sheet1$]"
sql = sql + "where 科室代码 like '" & x & "'"
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额;"
改为
sql = "select 年月,科室代码,科室名称,成本项目名称,金额 from [sheet1$]"+“ ”
sql = sql + "where 科室代码 like “ ” & x & “ ”
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额"
试试
sql = sql + "where 科室代码 like '" & x & "'"
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额;"
改为
sql = "select 年月,科室代码,科室名称,成本项目名称,金额 from [sheet1$]"+“ ”
sql = sql + "where 科室代码 like “ ” & x & “ ”
sql = sql + "group by 年月,科室代码,科室名称,成本项目名称,金额"
试试
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
注意SQL语句中的空格,比如你的[sheet1$]后面好象就少一个空格。
你可以在调试状态下将SQL输出出来,看一下哪个地方出错了。
你可以在调试状态下将SQL输出出来,看一下哪个地方出错了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询