如果是Access中的语句

时间:2016-11-11 16:11:44

标签: ms-access ms-office

我有一个允许你拥有蜥蜴或蛇的数据库。当然,一个人可以拥有许多蜥蜴和/或蛇。 “宠物”字段是一个下拉菜单,允许您为每只宠物挑选蜥蜴或蛇,但是购买每只宠物的费用(有自己的字段)是不同的。蜥蜴是10美元,蛇是15美元。

有没有办法设置它,以便如果你从下拉菜单中选择“蜥蜴”,费用会变为10美元,如果你选择“蛇”,费用将变为15美元。而不是手动输入每个费用。通常我会写一个if语句

if (pet = snake)
 {
   fee = 15
 }

或类似的东西。

1 个答案:

答案 0 :(得分:2)

使用表格。使用IF语句的问题是,当您添加新动物或更改价格时,您需要重新编写代码,使用表格只需将新动物和成本添加到表中即可。

创建一个名为tbl_Pets的表。我已将PetID添加为AutoNumber主键,PetName已编入索引以不允许重复,PetCost具有货币数据类型。
enter image description here

接下来创建一个表单并添加一个组合框 如果使用向导:让组合框从表中获取其值(tbl_Pets)并将所有字段添加到组合框并隐藏键列。

在表单中添加一个文本框,并将其Control Source设置为=[Combo0].[Column](2)(如果您的组合框名为Combo0。) 这将返回第三列的值(第一列是索引号0)
enter image description here

添加包含两个字段的组合框 - PetIDPetName 添加文本框并为其指定Control Source =DLookUp('PetCost','tbl_Pets','PetID=' & [Combo0]) - 这将根据组合框中隐藏列中的ID查找费用 enter image description here