Microsoft Access 2013 输入参数值 [关闭]
Posted
技术标签:
【中文标题】Microsoft Access 2013 输入参数值 [关闭]【英文标题】:Microsoft Access 2013 Enter Parameter Value [closed] 【发布时间】:2015-09-20 06:29:53 【问题描述】:在将其作为副本注销之前,我已经广泛寻找与我的情况相似的情况,我发现了这种情况,并尝试了所有建议,但没有一个奏效。
我正在创建一个数据库,用于为假设的汽车租赁公司编辑、排序、输入和生成数据。对我来说,具体关注的领域是在输入参数时搜索特定类型汽车的功能。
我正在使用查询设计视图创建查询。我使用的表称为“汽车表”。我使用的所有字段都来自该表。这些字段包括复选框、文本条目和组合框。
对于进一步的上下文,到目前为止,我已经创建了一个表单(嗯,几个表单的合并),用户必须输入用户名/密码才能输入。然后他们被带到主屏幕并可以切换到多个选项卡;一种用于打印报告,一种用于输入或编辑数据,一种用于根据参数查找特定汽车。
在汽车搜索页面中,我创建了几个文本框并为它们命名。为了使这个问题更小一点,将只关注其中一个文本框。这个文本框叫做“txtVIN”(VIN 代表车辆识别号)。
现在,在查询设计视图中,在字段 car_VIN 下,我编写了条件“=[Forms]![Find a Car Form]![txtVIN]”
据我所知,上面的代码应该搜索“查找汽车表格”的“txtVIN”文本框中当前写入的任何内容,并返回所有相同的结果(稍后我将确定如何搜索相似而不是确切的结果)。
但是,当我按下“运行”时,会出现一个标题为“输入参数值”的文本框。在标题下方显示“Forms!Find a Car Form!txtVIN”并有一个空白文本框。如果我在此文本框中输入确切的值并按“确定”,它将显示具有该确切值的每个字段,但“查找汽车”表单上的文本框对此结果没有影响。
作为参考,这里是 SQL 代码(请记住,我使用设计视图创建此代码):
SELECT [Car Table].Car_VIN, [Car Table].Car_Class, [Car Table].Car_BodyType, [Car Table].Car_Colour, [Car Table].Car_Make, [Car Table].Car_Model, [Car Table].Car_EngineType, [Car Table].Car_TransmissionType, [Car Table].Car_GPSAvailability, [Car Table].Car_BootSpace, [Car Table].Car_FuelConsumptRate, [Car Table].Car_SeatNumber, [Car Table].Car_GreenStarRating, [Car Table].Car_ANCAPSafetyRating
FROM [Car Table]
WHERE ((([Car Table].Car_VIN)=[Forms]![Find a Car Form]![txtVIN]));
我几乎可以肯定没有拼写错误。
澄清一下,我想要的结果是我可以在 txtVIN 文本框中输入一些内容,运行查询,并获得所有相似或准确的结果(我可以通过希望我自己)。
我对 Access 非常陌生,事实上我是在 3 天前第一次使用它,这意味着如果可能的话,我希望你把你的答案简化一点,以便我理解,谢谢!
编辑:我最近尝试设置查询以检查两个参数(如果 VIN 与输入的相同,并且“类”与输入的相同)并且它产生了,低并且看,两个“输入”实例参数值”弹出框。只是觉得这可能有用。
编辑:对于那些说问题不清楚的人;我的问题是,当我尝试运行查询时,不是从表单中的文本框中查询绘制参数,而是显示“输入参数值”的窗口。我不希望这个窗口出现,我希望从表单中的文本框中提取参数。
【问题讨论】:
我看不出这里有明显的错误。如果您的表单名为“查找汽车表单”,并且在您运行查询时它是打开的,那么它应该可以工作。 --- 参数提示意味着 Access 在运行查询时无法评估“[Forms]![Find a Car Form]![txtVIN]”(即它没有找到表单或文本框)。 @Andre451 我不确定这是否会有所作为,但我刚刚想到了一些事情。我的表单在导航表单中;也许这与它有关?也许我需要不同的符号来指定导航表单中表单的位置。我很确定我错了,但值得猜测。 【参考方案1】:如果表单是子表单,则需要指定通过表单到文本框的“完整路径”。例如
[Forms]![Navigation Form]![Subform Control Name].Form![txtVIN]
[Subform Control Name]
可能是[Find a Car Form]
,但不一定与子表单名称相同。
【讨论】:
我尝试了上面的方法,但没有成功,我仍然得到弹出框,但现在它显示“Forms!Navigation Form!Find A Car Form.Form!txtVIN”(是的,我的导航表单绝对称为“导航表单”)。也许我对控件名称有误?我不确定控件名称是什么。澄清一下,当我说我的表单在导航表单中时,我的意思是我有一个导航表单,其中包含其他表单的选项卡。我计划在页面中显示一个小数据表视图,但我会在主搜索功能正常工作后弄清楚如何做到这一点。 Re“我不确定控件名称是什么”:在设计视图中打开导航表单。单击子窗体控件以将其选中。然后打开它的属性表并确认它在 "Property Sheet" 标题下方显示了 "Selection type: Subform/Subreport"。如果它说“选择类型:表单”,那不是子表单控件 ...继续搜索,直到您选择了控件。然后记下它的名字并用那个名字替换[Subform Control Name]
。
谢谢@HansUp。 BlueRhapsody:重要的是只单击子表单一次。如果您单击它两次,则您已将设计焦点移至子表单本身。以上是关于Microsoft Access 2013 输入参数值 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Microsoft Access 2013 - 表数据中的变量