1

这应该很简单。我可以在 Excel 中轻松做到这一点,但它并没有实现这一目标。我有一个跟踪车队状态的数据库,包括各种定期维护服务。我有一个查询所有服务(每季度、每半年、每年),并列出服务的公差到期日期。然后我有一个报告,我想在其中包括一些基本总数:商店里每种车辆有多少,每种服务有多少到期。

麻烦来自于计算状态。“店内”可能已完成 10%、50%、90%。所以我试图让 count() 公式使用通配符。这个不行:

=Count(IIf([Status] = "In Shop*",1,0))

那个星号让我知道该字段中的所有项目,无论是否为空白。

4

2 回答 2

1

这个怎么样(编辑:我相信你真的想在SUM这里使用这个功能,而不是COUNT):

=Sum(IIf(Left([Status], 7) = "In Shop", 1, 0)
于 2011-11-28T16:04:58.137 回答
1

问题是您没有按另一个字段分组,因此 Count() 将返回所有项目。

解决这个问题的三种方法:

  1. 创建一个单独的字段,您可以在其中执行 IIF 语句。然后,对该字段执行 Count(),但将该字段包含在您的 GroupBy 子句中。
  2. 创建一个 VBA 函数来封装此逻辑并从报表上的控件调用该函数。
  3. 而不是使用 Count() 使用 Sum。

例子:

Sum(IIf([Status] Like "in shop*",1,0))
于 2011-11-28T16:15:32.380 回答