Macro que permita ver una imagen a partir de un valor en una celda

No me considero para nada muy conocedor de sistema, me podrían ayudar en crear una macro que al consultar un valor determinado me muestre una imagen.

Tengo almacenado en disco "C:\personal\" alrededor de 1000 imágenes codificadas desde el 1 en adelante la idea es que en una hoja Excel en una celda "I2" específicamente digitar un numero relacionado a la carpeta y me arroje la imagen en un recuadro de Imagen de (control ActiveX)

1 Respuesta

Respuesta
1

H o l a:

Pon la siguiente macro en los eventos de tu hoja.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Target.Count > 1 Then Exit Sub
    If Target.Address(False, False) <> "I2" Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Image1.Picture = Nothing
    ruta = "C:\personal\"
    'ruta = "C:\trabajo\"
    arch = Dir(ruta & Target.Value & ".*")
    If arch <> "" Then
        On Error Resume Next
        Image1.Picture = LoadPicture(ruta & arch)
        werr = Err.Number
        If werr <> 0 Then
            MsgBox "El archivo no es una imagen válida", vbExclamation, "ERROR: " & Err.Description
        End If
    Else
        MsgBox "El archivo no existe", vbCritical, "ERROR"
    End If
    Target.Select
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

Solamente pon el número de imagen en la celda I2 y la macro en automático buscará la imagen, no importa la extensión que tenga el archivo, puede ser jpg, jpeg, gif, etc.


' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

Estimado ¡Gracias! 

Solo tuve que eliminar una línea  de la macro  "Image1.Picture = Nothing"

y me funciona a la perfección.

desde ya muchas gracias y un abrazo a la distancia. quedo excelente.

Rigoberto.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas