个人觉得复杂了。
建议用GetRows或者Getstring为佳: http://www.office-cn.net/thread-119067-1-1.html***********************************************************************************
Dim D As DAO.Recordset
'改成这样,那一句就没问题了。
Dim sqlstr As String
Dim cristr As String
If criteria = "" Then
cristr = ""
Else
cristr = " where " & criteria
End If
sqlstr = "select " & fieldname & " from " & tblName & cristr & " GROUP BY " & fieldname
Set D = CurrentDb.OpenRecordset(sqlstr) '这一句提示有问题。
***********************************************************************************