Microsoft Access:如何在计算字段表达式中执行IF?

时间:2011-06-06 07:15:28

标签: ms-access vba calculated-columns

我希望我的计算字段具有这样的条件值: 如果fieldA为0,则将fieldC设置为0 else字段C = fieldB / fieldA

我该怎么做?感谢。

当你在这里时,我如何在Access VBA例程中执行此操作,以便我可以继续修改我的条件。

2 个答案:

答案 0 :(得分:2)

在表格定义中:不可能。

作为查询:

SELECT
  IIF(FieldA = 0; 0; FieldB / FieldA) AS FieldC
FROM
  ATableWithFieldAAndFieldB

作为VBA中的SQL文本:替换;用,

答案 1 :(得分:2)

您可以在模块代码中添加这样的程序......

Public Function CalculateFieldC(ByVal fieldA as Long, ByVal fieldB as Long) as Single
  If fieldA = 0 Then
    CalculateFieldC = 0
  Else: CalculateFieldC = fieldB / fieldA
  End If
End Function

然后从SQL语句中调用它;例如:

SELECT fieldA, fieldB, CaculateFieldC(fieldA, fieldB) AS fieldC
FROM aTableWithFieldAandFieldB;