北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
为什么会出现运行时错误3610,参数不足,期待是1?
Private Sub 开始导入_Click()
Dim rs As Recordset, rs_tmp As Recordset
Dim strSql As String
Dim AddTimes As Long
Dim fn As String
Dim filename As String
Dim filefullname As String
Me.txtselect.SetFocus
If txtselect.Text = "" Then
MsgBox "您未选择需要导入的文件,不能导入数据,请单击“浏览”按钮!", vbInformation, "消息提示"
Exit Sub
End If
fn = Mid$(txtselect, InStrRev(txtselect, "\") + 1)
filename = Left(fn, Len(fn) - 4)
filefullname = Me.txtselect.Text
If filename = "期刊馆藏数据" Then
x = MsgBox("文件名不能与数据表同名,请另起一个文件名!", vbCritical, "消息提示")
DoCmd.Quit
End If
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, filename, filefullname, True, "A1:E50000"
Set rs = CurrentDb.OpenRecordset("select * from 期刊馆藏数据 ", dbOpenDynaset, dbDenyRead)
strSql = "select 订购刊号,条码号,刊名,年卷期,馆藏地点 from " & filename & " where 条码号 is not null"
Set rs_tmp = CurrentDb.OpenRecordset(strSql, dbOpenDynaset, dbReadOnly)
rs_tmp.MoveFirst
Do While Not rs_tmp.EOF
strSql = "[条码号]=" & Chr(34) & rs_tmp.Fields("条码号") & Chr(34)
rs.FindFirst (strSql)
If rs.NoMatch = True Then '如果书号不相同,则插入记录
rs.AddNew
rs.Fields("订购刊号") = rs_tmp.Fields("订购刊号")
rs.Fields("条码号") = rs_tmp.Fields("条码号")
rs.Fields("刊名") = rs_tmp.Fields("刊名")
rs.Fields("年卷期") = rs_tmp.Fields("年卷期")
rs.Fields("馆藏地点") = rs_tmp.Fields("馆藏地点")
rs.Update
AddTimes = AddTimes + 1
End If
rs_tmp.MoveNext
Loop
rs_tmp.Close
rs.Close
MsgBox "导入结果: 插入了 [" & AddTimes & "] 条记录", vbInformation, "消息提示"
DoCmd.DeleteObject acTable, filename
End Sub