Poner un numero en una celda de excel y que me aparezca una fotografia en un control de imagen

Tengo una base de datos y en la hoja 1 estan con los nombres, puestos y areas de trabajadores del campo, cada uno de ellos tiene asignado un numero (1,2,3,4,5... Etc), en la hoja 2 tengo un formato para imprimir credenciales con fotografia, en la cual inserto en una celda el numero que corresponde al trabajador que deseo hacerle su credencial y me aparecen sus datos; tambien tengo un control de imagen en el cual pretendo que al momento de ingresar el codigo del empleado y darle enter, me aparezca en el control de imagen la fotografia del trabajador para su impresion. Tengo mas de 2000 registros en la hoja 1, por lo que quisiera hacer mas practico la impresion de las credenciales. Ojala pudieran ayudarme con el codigo vba.

1 respuesta

Respuesta
2

H0la Bernabe:

Supongamos que el control se llama Image1, las fotos están alojadas en "C:\fotos\" y que el nombre de las fotos 1.jpg, 2.jpg, 3.jpg, etc. Siendo el número el id del trabajador, entonces podrías utilizar el siguiente código, asumiendo que el código del empleado queda en la celda A1.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strRuta As String
    'Validar si ha cambiado la celda A1'
    If Target.Column = 1 And Target.Row = 1 Then
        strRuta = "C:\fotos\" 'Ruta a la carpeta de las imagenes'
        Image1.Picture = LoadPicture(strRuta & Range("A1").Value & ".jpg") 'Cargar imagen'
    End If
End Sub

Ahora, si tienes el nombre de la foto en alguna celda de la tabla, lo podrías utilizar en lugar del número que representa el código del trabajador.

S@lu2

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas