【问题标题】:MS Access Auto Populate form based upon a different field's selection基于不同字段选择的 MS Access 自动填充表单
【发布时间】:2016-05-07 20:10:14
【问题描述】:

我的数据库中有几个表。

workout_moves - ID、锻炼类型、锻炼、次数 session_moves - ID、锻炼(来自锻炼移动表)、体重、备注

我创建了一个名为锻炼会话的表单,它为 session_moves 表创建了一个子表单。

session_moves 子表单如下所示:

这很好 - 但是当我从列表中选择我的锻炼时,我希望它自动填充锻炼移动表中相关的代表值,而不是强迫我从列表中选择,这不是我想要的。

正如您在锻炼移动表中看到的那样,每个练习都与一个 reps 列相匹配,所以这应该很容易:

我只是无法计算出此表单中代表列的“行源”应该是什么,以便自动提取与练习列中的选择相关的数据。请帮忙。

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    设置控制源为

    =Dlookup("Reps";"workout_moves";"[workout Type] = '" & Nz(cboExercise;"") & "'")
    

    在代表控件中。 cboExercise 是练习组合框的控件名。

    考虑将表session_moves 中的外键从Exercises 更改为ID(使用primarykeys 作为外键)。

    【讨论】:

    • 它说您输入的表达式包含无效的语法。您省略了操作数或运算符?
    • @Renegade 错字!应该是Nz(cboExercise;"")。外部 vba 分隔符是 ; 而不是 ,!
    • 更正了几个拼写错误和错误的字段名称[workout Type]!在测试数据库中为我工作。
    • 你能分享这个测试数据库吗?我仍然遇到语法问题。
    • 确保组合框的名称是cboExercise!表格和字段名称是否合适(Reps、workout_moves、[workout Type])?显示表格中字段的数据类型!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多