Cargar imagenes en Excel dinamicamente

Quiero cargar imágenes en Excel de forma dinámica, indicando en una celda el path de la imagen, y cagarla en otra celda, el objetivo es poder actualizar dicho excel sin tener que ir pegando las imágenes manualmente.

1 respuesta

Respuesta
1
Es muy sencillo, en la celda que desees (por ejemplo a1) escribe la ruta completa de donde esta la imagen. En este caso,
C:\Documents and Settings\Usuario\Mis documentos\Mis imágenes\Casorio Civil\001.jpg
y la macro debe ser la siguiente :
Sub INSERTA_IMAGEN()
      RUTA = Range("a1").Value
      ActiveSheet.Pictures.Insert(RUTA).Select
End Sub
tambien puedes tener la ruta en una celda y el nombre del archivo en otra (o hacer un cuadro de dialogo que pida el mismo) y luego solo tienes que concatenarlo
nombre_archivo = Range("a2").value
RUTA = Range("a1").value & nombre_archivo
Saludos y no te olvides de finalizar y evaluar la respuesta.
Muchas gracias, ha sido una gran ayuda, el resultado final ha sido el siguiente, espero que sirva de referencia para más usuarios:
Dim Archivo As String
If Target.Column = 1 Then
   ' borramos la imagen actual para no repetirlas 
   ActiveSheet.Pictures.Delete
   ' situamos la imagen en la quinta columna
   ActiveCell.Offset(0, 4).Select
   ' hacemos el recorrido hasta que tengamos una celda en blanco
   Do While ActiveCell.Offset(0, -4).Value ""
      ' la ruta del archivo esta en la primera columna
      Archivo = ActiveCell.Offset(0, -4).Value
      ' insertamos la imagen
      ActiveSheet.Pictures.Insert(Archivo).Select
      ActiveCell.Offset(1, 0).Select 'Avanza una fila cada vez hasta el final
   Loop
End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas