Concatenar varios registros de un mismo campo en un resumen
Estoy intentando hacer un resumen de las valoraciones que los alumnos asistentes han hecho de unos cursos. Ya he promediado las notas medias, etc pero me gustaría concatenar el apartado "Observaciones" en el resumen final. Es decir, si un alumno ha escrito "Brillante", otro "Genial" y un tercero "Demasiado largo" quiero que en el resumen me salga "Brillante, Genial, Demasiado largo". Estoy intentándolo con una función llamada Observar a la que paso como parámetro el número del "Curso", un Long. La función es:
Option Compare Database
Option Explicit
Public Function Observar(Curso As Long) As String
Dim rst As New ADODB.Recordset
rst.Open "Select Observaciones From [Acciones formativas] where [Clave curso]='" & Curso & "'", CurrentProject.Connection, adOpenStatic, adLockReadOnly
Do Until rst.EOF
' If Observar = "" Then
If Len(Nz(Curso, "")) = 0 Then
Observar = rst.Fields(0)
Else
Observar = Observar & ";" & rst.Fields(0)
End If
rst.MoveNext
Loop
rst.Close
End Function
Pero cunado la pruebo en la ventana Inmediato me da el error: "No se ha definido el tipo definido por el usuario" en la instrucción "Dim rst...". El caso es que he mirado en Herramientas/Referencias y tengo activadas:
* Visual Basic for Applications
* Microsoft Acces 15.0 Object Library
* OLE Automation
* Microsoft Office 15.0 Access database Object Library
Ya no sé qué mirar... ¿Alguna sugerencia?
Josss
Por hacer copia-pega, se me pasó el New. Usando DAO la primera línea sería simplemente: Dim rst As DAO. Recordset. Un saludo - Sveinbjorn El Rojo