【发布时间】:2021-01-16 18:17:30
【问题描述】:
考虑到这个excel
我在 Microsoft Access 中创建了一个 VBA 函数来读取此文件并将其保存/导入到我的表上,即:部门、员工和职位。这就是我制作函数的方式:
Private Sub Command41_Click()
Dim fileName As String
Dim fso As New FileSystemObject
Dim xlApp As Excel.Application
Dim xlWb As Excel.Workbook
Dim xlWs As Excel.Worksheet
Dim intLine As Long
Dim rs As DAO.Recordset
Dim sql As String, deptId As Long, empId As Long, jobId As Long
fileName = "C:\Users\Admin\Documents\Reports.xlsx"
If fso.FileExists(fileName) Then
Set xlApp = New Excel.Application
xlApp.Visible = True
Set xlWb = xlApp.Workbooks.Open(fileName)
Set xlWs = xlWb.Worksheets(1)
intLine = xlWs.Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To intLine
sql = "SELECT ID FROM Departments WHERE DeptName = " & xlWs.Cells(i, 1)
Set rs = CurrentDb.OpenRecordset(sql, dbOpenSnapshot)
MsgBox rs
Next
End If
End Sub
我的问题是这一行Set rs = CurrentDb.OpenRecordset(sql, dbOpenSnapshot) 正在返回此错误:错误 3061 参数太少。预计 4。我不知道我还缺少哪些其他参数,因为在网上我只找到了两个。
非常感谢任何帮助
【问题讨论】: