Ms access 在MS Access中以分号分隔列表形式检索电子邮件地址的子查询
我在Access中有一个联系人表和一个搜索表单。用户指定搜索条件后,该表仅显示符合条件的记录 是一种以分号分隔的列表检索搜索联系人的所有电子邮件地址的方法,这样我就可以复制并粘贴到新电子邮件的“收件人”字段中 谢谢你的帮助Ms access 在MS Access中以分号分隔列表形式检索电子邮件地址的子查询,ms-access,vba,ms-access-2010,ms-access-2013,Ms Access,Vba,Ms Access 2010,Ms Access 2013,我在Access中有一个联系人表和一个搜索表单。用户指定搜索条件后,该表仅显示符合条件的记录 是一种以分号分隔的列表检索搜索联系人的所有电子邮件地址的方法,这样我就可以复制并粘贴到新电子邮件的“收件人”字段中 谢谢你的帮助 Roshan.你也可以使用UDF,只是把它排除在程序之外。获取筛选结果所依据的条件。然后你只需通过标准。我不知道你是如何建立你的标准的。黑暗中的刺刀是获取所有名为保罗的人的电子邮件。因此,您的代码将是 Public Sub getEmailString(FieldName A
Roshan.你也可以使用UDF,只是把它排除在程序之外。获取筛选结果所依据的条件。然后你只需通过标准。我不知道你是如何建立你的标准的。黑暗中的刺刀是获取所有名为保罗的人的电子邮件。因此,您的代码将是
Public Sub getEmailString(FieldName As String, Tablename As String, Criteria As String)
Dim tmpRS As DAO.Recordset
Dim tmpStr As String, retStr As String
tmpStr = "SELECT " & FieldName & " FROM " & Tablename & " WHERE " & Criteria
Set tmpRS = CurrentDB.OpenRecordset(tmpStr)
If tmpRS.RecordCount > 0 Then
Do While Not tmpRS.EOF
retStr = retStr & tmpRS.Fields(0) & ";"
tmpRS.MoveNext
Loop
End If
getEmailString = retStr
Set tmpRS = Nothing
End Sub
要使用它,您只需使用
Dim someEmailString As String
someEmailString = getEmailString("EmailFieldName", "ContactsTableName", "FirstName = 'Paul'")
如果你有东西,它应该还你
paul.someone@somedomain.com;paul.someoneelse@somenewdomain.co.uk;
希望这有帮助。您需要使用记录集对象。为了循环并获得listHI Paul,感谢您的回复。问题是“表单文本字段”被用作运行查询的参数。当我运行您在查询结果中建议的代码时。它提供了错误所需的参数。参数号x’。如何解决这个问题?请用你目前所做的更新你原来的帖子。