1

我有一个 2010 Access 数据库,用于跟踪慈善团体的志愿者。VOLUNTEER 表中的一列称为 AVAILABILITY,可能的值为“季节性”和“全年”。

我创建了一个列出所有志愿者信息的报告,其中包括此列。我唯一的问题是我想让报告缩写这些值。理想情况下,“S”代表季节性,“YR”代表全年,以节省报告空间。这可能吗?

4

2 回答 2

2

您可以使用 IIF 函数,但这仅允许两个可用性选项。为了将来允许更多,我将创建第二个表来查找将在您的报告中显示的缩写词。

将其复制并粘贴到 Access 中的 SQL 编辑器中以创建这样的表:

SELECT "Seasonal" AS Availability, "S" AS Abbreviation INTO tblAvailabilityOptions;

然后,您将创建一个查询,您的报告将基于该查询将您的主表与您刚刚创建的新表结合起来,并加入“可用性”列:

SELECT tblMain.ID, tblMain.Volunteer, tblMain.Availability, tblAvailabilityOptions.Abbreviation
FROM tblMain INNER JOIN tblAvailabilityOptions ON tblMain.Availability = tblAvailabilityOptions.Availability;

如果您知道如何在主表上使用组合框查找功能,这将更加容易。

于 2012-12-20T12:16:40.423 回答
2

是的当然。您可以在查询中执行此操作并将报告基于该查询或报告本身:

 SELECT IIF([AVAILABILITY] = "Seasonal","S","Yr") As Avail 
 FROM MyTable

如果您希望在报告中设置控件,请确保将其重命名为可用性以外的名称,例如 txtAvailability:

 = IIF([AVAILABILITY] = "Seasonal","S","Yr")
于 2012-12-20T10:58:09.933 回答