Búsqueda de datos con imágenes en VBA

1. Cuando escribo el Id_Nombre me salgue automático la fotografía de la persona mas el DNI, la base de datos estará en excel.

2. Las fotografías debe cagar desde una carpeta D:\Fotos, las fotos estarán con el nombre de su dni de la persona (45454678.jpg)

3. Opcional: como se puede cargar las fotos de las celdas del excel este formulario

2 Respuestas

Respuesta
1

Te anexo el código para insertar la imagen.

Te faltó comentar algunos detalles, por ejemplo, el nombre de tu hoja, los nombres de tus controles, en cuáles columnas están el nombre y el DNI, pero puedes adecuarlos en el código:

Private Sub CommandButton1_Click()
'Por Dante Amor
    If TextBox1.Value = "" Then
        MsgBox "Captura el nombre"
        Exit Sub
    End If
    '
    Set h = Sheets("Hoja1")
    Set Image1.Picture = Nothing
    TextBox2.Value = ""
    '
    Set b = h.Columns("A").Find(TextBox1.Value, lookat:=xlWhole)
    If Not b Is Nothing Then
        ruta = "D:\Fotos\"
        TextBox2.Value = h.Cells(b.Row, "B").Value
        If Dir(ruta & TextBox2.Value & ".jpg") <> "" Then
            Image1.Picture = LoadPicture(ruta & TextBox2.Value & ".jpg")
        Else
            MsgBox "No existe el archivo con el DNI"
        End If
    Else
        MsgBox "No existe el nombre en la base de datos"
    End If
End Sub

Te sugiero que agregues un commandbutton a tu userform, después de capturar el nombre, presiona el botón para cargar el DNI y la imagen.

Cambia en la macro, hoja1 por tu hoja, textbox1, textbox2 y image1 por tus controles.


.Sal u dos. Dante Amor. No olvides valorar la respuesta. G r a c i  a s

Gracias por la respuesta...

Tiene los detalles que mencionas, que medidas tiene una fotografía como estandar en estos casos.

La pregunta es como puedo hacer para que las fotografías funcione en todo lugar cuando llevo el archivo en diferentes computadoras con un USB. (no solo este en el disco D: Fotos)

Saludos.

Felipe

Con gusto te ayudo con todas tus peticiones.

Si el código te funcionó para lo que solicitaste originalmente, podrías valorar la respuesta.

Estimado Experto Dante

Deseo que me brindes tu apoyo.

La pregunta es como puedo hacer para que las fotografías funcione en todo lugar cuando llevo el archivo en diferentes computadoras con un USB. (no solo este en el disco D: Fotos)

En el mensaje anterior el código que me brindaste debe salir 3 msgbox: 1 cuando no hay datos en la base de datos "No existe el nombre en la base de datos",  2 cuando no encuentra el numero de DNI y 3 cuando no encuentra la fotografía.

Saludos.

Felipe

Para que funcione en todas las computadoras debes homologar o estandarizar, para cuando utilicen tu formulario, la carpeta de fotos deberá estar en un lugar en específico dentro de la computadora.


Lo de los mensajes es un plus que agregué a la macro, ya que en tu petición original no estaba explicado.

El único mensaje que falta es este:

2 cuando no encuentra el numero de DNI

¿Pero en dónde se debe buscar ese número de DNI o cómo saber si no existe?


Con mucho gusto te ayudo con todas tus peticiones.

Crea una nueva pregunta en Todoexpertos.com . Ahí me describes con detalle lo que necesitas.

Sal u dos

Respuesta

Esto puede aportar algo más

https://youtu.be/UR-j8-eFQrI 

Visita https://programarexcel.com descarga cientos de ejemplos gratis

Suscribe https://youtube.com/programarexcel tutoriales y ejemplos sobre macros de Excel

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas