Imprimir un informe de un registro en un formulario.

Con el siguiente código se me aparece el informe en la pantalla, pero con todos los campos vacíos, porque supongo que me falla algo, y no lo encuentro.
Si estoy en el registro 35, me debe imprimir el informe del registro 35.
Private Sub Imprimir_Click()
On Error GoTo Err_Imprimir_Click
Dim stDocName As String
stDocName = "TSocios"
DoCmd.OpenReport stDocName, acViewPreview, , "ID Socio" = "& Me.ID Socio"
Exit_Imprimir_Click:
Exit Sub
Err_Imprimir_Click:
MsgBox Err.Description
Resume Exit_Imprimir_Click
End Sub
¿Dónde está el fallo?

1 Respuesta

Respuesta
1
Prueba así:
DoCmd.OpenReport stDocName, acViewPreview, , "ID Socio = " & Me.ID Socio
Observa que el argumento WhereCondition es ligeramente distinto.
Me da un error de Compilación: Error de Sintaxis.
Y justamente tu línea queda sombreada en rojo.
Veo que ID Socio contiene un espacio... Si es así realmente:
Me![ID Socio]
Xavi
Uffsss.
Cada solución que me das tiene un error diferente, je je.
En realidad había espacios, e identifica bien los registros a imprimir.
Pero me da error de:
Error de sintaxis (falta operador) en la expresión de consulta '(ID Socio = 1)'
Pon los corchetes también "dentro" de las comillas:
"[ID Socio]=" & Me![ID Socio]
Un consejo: evita espacios, acentos y caracteres extraños en cualquier objeto, control, campo o variable de una aplicación.
Se entiende exactamente igual ID Socio que IdSocio. Lo mismo que Nombre completo o NombreCompleto. ¿Me explico?
Ello te evitaría todos estos "errores" y, además, muchos caracteres de más... (los corchetes dejan de ser necesarios cuando no hay espacios)
Ahora funciona todo correctamente.
Gracias por tu consejo para eliminar el espacio, haré algunos retoques eliminando espacios en los registros y probar el código principal.
Gracias por tu ayuda.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas