我是使用此数据库的几个人之一。我是唯一一个得到这个错误的人。
当我打开名为frmEmployeeDetails的表单时,有一个组合框应该填充查询结果。如果我尝试选择组合框,它会给我一个“输入参数值”提示,询问Forms!frmEmployeeDetails.Caption
。表单的标题是“EMPLOYEE DETAILS”,但键入该表单不会使组合框工作。组合框的查询要求[FORMS]![frmEmployeeDetails].[Caption]
。
据我所知,我是唯一一个遇到此错误的人。它只在我的计算机上发生,无论打开的数据库版本是什么(更新都没有修复它)。重新安装Access也没有修复它。我还尝试在查询中输入[FORMS]![frmEmployeeDetails].[Caption]
并让它自动填充,以确保没有拼写错误。
这是组合框的行源。
SELECT tblFormDataTables.DataID
, tblFormDataTables.Data
FROM tblFormDataTables
WHERE (((tblFormDataTables.Location)=[FORMS]![frmEmployeeDetails].[Caption]))
ORDER BY tblFormDataTables.Data;
有什么建议吗?
答案 0 :(得分:0)
如果您是唯一一个从多个用户中收到此错误的人,那么我建议您使用Dim SelRange As Range
Dim ColNum As Integer
Dim CWS As Worksheet, TmpWS As Worksheet
'Find the column number where the column header is
Set CWS = ActiveSheet
ColNum = Application.WorksheetFunction.Match("Employee ID", CWS.Rows(1), 0)
'Set the column range to work with
Set SelRange = CWS.Columns(ColNum)
'Add a worksheet to put '1' onto the clipboard, ensures no issues on activesheet
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set TmpWS = ThisWorkbook.Worksheets.Add
With TmpWS
.Cells(1, 1) = 1
.Cells(1, 1).Copy
End With
'Select none blank cells using special cells...much faster than looping through all cells
Set SelRange = SelRange.SpecialCells(xlCellTypeConstants, 23)
SelRange.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply
TmpWS.Delete
CWS.Select
Application.DisplayAlerts = True
Application.ScreenUpdating = True
- > Database Tools
。
如果这不能解决此问题,请尝试从正常运行的人员计算机上重新复制数据库。
似乎你的组合框已经以某种方式与其Compact and Repair
无关。您还可以测试此计算机上的其他用户是否存在相同的问题。
答案 1 :(得分:0)
我不知道为什么它在您的计算机上不起作用,但在其他计算机上却起作用。但是,要使其工作,您可以创建一个隐藏文本框,该文本框设置为表单标题,并将查询条件替换为对隐藏文本框的引用。