Problemas a poner foto en formulario

Para poner una foto en un formulario he seguido el ejemplo de Neckkito (http://goo.gl/6sjDH), así como la base de datos que tiene de ejemplo. Pero me surge el siguiente problema y no consigo con la solución:

Tengo un subformulario en vista hoja de datos con hipervínculo en el campo "NCompleto" (el nombre completo). Al pulsar en un nombre concreto se me abre el formulario correspondiente a esa persona. Para ello uso el siguiente código:

DoCmd. OpenForm "Alumnado", acNormal DoCmd. Maximize
Dim rst As Recordset
Set rst = Forms![Alumnado].Form.RecordsetClone
rst.FindFirst "NIE_alumnado =" & Me.NIE_alumnado
Forms![Alumnado].Form.Bookmark = rst.Bookmark

Finalmente cierro el formulario donde se encuentra el subformulario en vista hoja de datos con el listado de los alumnos:
DoCmd.Close acForm, "MENÚ"

El problema lo tengo en que, si sigo los pasos de Nickkito, se me abre el formulario en el primer registro y no en el que deseo. El código de Nickkito se pone al activar registro y es el siguiente:

Dim vNom As Variant
vNom = Me.Nombre.Value
'Si no hay valor en el campo nombre no asigna ninguna imagen al 'cuadro de imagen
If IsNull(vNom) Then
    Me.imgNombre.Picture = ""
Else 'Si hay valor, asigna el valor al cuadro de imagen
    Dim miRuta As String
    miRuta = Application.CurrentProject.Path & "\Imagenes\" & vNom
    Me.imgNombre.Picture = miRuta
End If

2 respuestas

Respuesta
2

Pedro: Sin entrar en el historial que comentas del Ejemplo de Neckkito, lo que si me llama la atención es la línea:

rst.FindFirst "NIE_alumnado =" & Me.NIE_alumnado

Normalmente el NIE es Texto, por lo que la línea debería ser>>

rst.FindFirst "NIE_alumnado ='" & Me.NIE_alumnado &"'"

Si así no te resuelve el problema y Neckkito no ve éste mensaje, dirige la pregunta directamente a él ya que sigue respondiendo en éste Foro. Mis saludos >> Jacinto

Respuesta
2

Güenassss!

Ya que se me cita pues intervengo para comentar que la respuesta de Jacinto me parece la más acertada, puesto que el código de apertura del formulario y posterior búsqueda, en principio, parece correcto.

Y ya que estamos, y si quieres abrir el formulario filtrado sin necesidad de recurrir a recordsets, también podrías utilizar esta otra fórmula, dando por supuesto que el campo NIE_alumnado es de tipo texto:

DoCmd.OpenForm "Alumnado", , , "[NIE_alumnado]='" & Me.NIE_alumnado & "'"

DoCmd. Close acForm, "MENÚ"

Saludos,

El campo NIE_alumnado es de tipo número entero. ¿Cómo tendría que poner el código? Gracias

DoCmd.OpenForm "Alumnado", , , "[NIE_alumnado]=" & Me.NIE_alumnado

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas