Macro Inserta Imágenes en Excel





Este procedimiento de VBA o macro de Excel inserta imágenes en Excel, básicamente lo que hace es un bucle recorriendo todas la filas que tengan datos de cierta columna e insertar la imagen cuyo path se encuentra en las filas donde realiza el bucle, modificando alto, ancho, ubicación de la imagen superior e inferior, es decir controla que se ubiquen una abajo de otra y no se superpongan.

Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.

  

En el post macro que abre el explorador de Windows e inserta fotos, se presenta una variante, ya que también inserta una foto, pero ésta es seleccionada desde el explorador de archivos; abajo les dejo el ejemplo para descargar el cual pueden adaptar a lo que requiera sus aplicaciones.

El vídeo que sigue muestra una explicación más detallada y gráfica de la macro presentada, recomiendo observar para una más fácil comprensión de la macro; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como  por ejemplo formulario que crea un listado de todas las hojas para poder luego seleccionarlasbuscar en listbox mientras escribes en textboxordenar hojas libro excel por su nombreconectar Excel con Access y muchos ejemplos más.









Sub InsertaImagen()
'Evito movimientos en la pantalla
Application.ScreenUpdating = False
'Dimensiono variables
Dim fila, superior, num As Integer
Dim path As String
fila = 1
superior = 0
num = 1
'Selecciono la celda donde comienza el bucle
Sheets("fotos").Range("a1").Select
'Controlo errores
On Error Resume Next
'Realiza el bucle mientras la fila x de la columna 1 de hoja fotos no este vacia
While Sheets("fotos").Cells(fila, 1) <> Empty
'Determino la dirección de la foto
    path = Sheets("fotos").Cells(fila, 1)
 
   
'Inserto la imagen y la activo en la hoja de excel
    Set Foto = Sheets("fotos").Pictures.Insert(path)
'Modifico propiedades entre ellas el nombre por si es necesario usarlo, sino
    With Foto
        .Name = num
        .Top = superior
        .Left = 400
        .Width = 150
        .Height = 150
        superior = superior + 150.5
        num = num + 1
    End With
'Elimino objeto
Set Foto = Nothing
fila = fila + 1
   
Wend
'En caso que quisiera eliminar una foto determinada puedo hacerlo así
'Sheets(fotos).Shapes(1).Delete
'Evito movimientos en la pantalla
Application.ScreenUpdating = True
End Sub






Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.




If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends