0

我有一个表“联系人”,其中有一个多值字段“部门”。我有另一个表“外展”,它有一个字段“合作伙伴组织”。我有一个查询,它将 'Contacts.Department' 和 'outreach.[partner org]' 组合成一个字段,使用在两个表中通用的全名字段外连接来连接两个表。我必须结合这两个字段的 SQL 语句是

Contacts.Department & ";" & Outreach.[Partner Org] AS [Dept/Partner Org]

如果我运行此查询,我会收到错误消息

The multivalued field 'Contacts.Department' is not valid in the expression 'Contacts.Department & " " & Outreach.[Partner Org] AS [Dept/Partner Org]'

如果我将“.Value”添加到多值字段,我会得到多行。

Contacts.Department.Value & " " & Outreach.[Partner Org] AS [Dept/Partner Org]

我希望输出具有多值值字段内容,后跟一个';' 和合作伙伴组织名称都在同一个单元格中。

请有人告诉我如何得到这个。

谢谢你。

4

1 回答 1

0

我在这些有用(从最终用户的角度)但令人恼火(从那些分析的角度)领域遇到了类似的问题。

我想出了一个解决方法,使用一种我认为可以解决您的问题的表格。我在表中添加了一个伪部门文本字段,将第四篇文章中稍作修改的代码应用于相关字段“更新后”事件,当它们发生变化时(我传递当前记录和 SQL 字符串仅汇总该记录)。

Dim db As Database, _
rst As Recordset, _
strSQL As String

Me.Refresh

Set db = CurrentDb
strSQL = "Select PseudoDepartment from YOURTABLE where UNIQUEIDNO = " & Me.UNIQUEIDNO & ";"
Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)

With rst
    If .RecordCount > 0 Then
        .MoveFirst
        .Edit
        !PseudoDepartment = MakeList(Me.UNIQUEIDNO)
        .Update
    End If
End With

要初始化伪部门字段,可以一一循环所有记录以生成内容。然后可以正常查询数据并以您指定的形式获取结果。

HTH。

于 2013-10-09T13:21:00.367 回答