我需要一些这方面的帮助,我似乎找不到正确的问题要求得到答案。我们有一张表基本上是1个主键,130个软件标题是Yes / No字段。我需要通过字段名称计算值(计数),我们可以使用简单的聚合查询来计算,但我的理解是,它只返回创建时查询中包含的字段的结果。随着额外的SW字段被添加到表中,我还需要包括那些计数。有没有一种简单的方法来实现这一目标。我的大脑被炒了!提前谢谢。
PK SW1 SW2 SW3 ...
1 1 0 1
2 1 0 0
3 0 1 1
所以我需要回复:
SW1 SW2 SW3
2 1 2
如果将SW4添加到表中,也包括该字段的结果。
克里斯
答案 0 :(得分:1)
假设您在访问中使用vb,您可以获取字段名称并为任何添加的字段动态构建新查询。
以下代码来自An example of how to get field names of a table。获取字段名称后,将它们放入数组中并删除构建查询时存在的任何内容。然后为任何添加的字段动态构建新查询。可能比你希望的更多的工作,但它会工作。
Public Function fReturnFieldList(strTableName)
Dim rst As DAO.Recordset
Dim fld As Field
Dim strReturn As String
On Error GoTo ProcError
Set rst = CurrentDb.OpenRecordset(strTableName)
For Each fld In rst.Fields
strReturn = strReturn & ", " & fld.Name
Next fld
EXIT_Proc:
fReturnFieldList = Mid(strReturn, 3)
On Error GoTo 0
Exit Function
ProcError:
strReturn = ", Cannot process " & strTableName
Resume EXIT_Proc
End Function