Cómo añadir imágenes en Excel con macros

Cómo añadir imágenes en Excel con macros

Una de las funcionalidades avanzadas que incorpora Excel son las macros. Gracias a ellas podemos automatizar las tareas recurrentes y ahorrar tiempo y energía. Para usarlas es necesario dominar Excel y conocer el lenguaje de programación VBA.

A través de las macros de Excel podemos realizar diferentes acciones, como por ejemplo añadir imágenes.

Las imágenes en Excel son un elemento secundario con respecto a las fórmulas matemáticas o funciones, pero también es bastante usual añadir fotografías a los documentos. Por este motivo repasamos todos los pasos para añadir imágenes en Excel con macros.

Usar macros para añadir imágenes en Excel

Si todavía no estamos preparados para usar macros podemos añadir imágenes en Excel de manera tradicional. Pero si queremos aprender esta nueva funcionalidad solo tienes que seguir estos pasos.

  1. Crear un libro de Excel y una carpeta con las imágenes que vamos a insertar en Excel. Tanto el archivo de Excel como la carpeta de las imágenes estarán ubicadas en el mismo espacio del ordenador.
  2. Creamos una tabla de Excel, en la primera columna se incluye el ID de las imágenes y en la segunda columna se añadirán las imágenes.
  3. Las imágenes tendrán el mismo nombre que el ID de la celda de Excel.
  4. Aplicamos la macro para insertar las imágenes.


Existen diferentes macros para añadir imágenes. Podemos utilizar códigos existentes o grabar el macro nosotros mismos. Si optamos por la primera opción recuerda no tener activa la habilitación de macros, así el código será revisado por posible virus.

 

Option Explicit

'EXCELeINFO
'MVP Sergio Alejandro Campos

Sub InsertarImagenes_2()
    
    'Declaramos variables
    Dim RutaActual As String
    Dim RangoImagen As Range
    Dim shp As Object
    
    'En caso de error...
    'On Error GoTo ManejadorErrores
    On Error Resume Next
    
    For Each shp In ActiveSheet.Shapes
        If shp.Name = "imagen2" Then
        Else
            shp.Delete
        End If
    Next
    
    'La variable RutaActual guardará la ruta completa donde está el archivo
    RutaActual = ThisWorkbook.Path
    
    'Desactivamos la actualización de pantalla
    Application.ScreenUpdating = False
    
    'Elegimos la celda B3
    ActiveSheet.Range("B3").Select
    
    'Recorremos cada fila mientras haya datos en la columna A
    Do While ActiveCell.Offset(0, -1).Value <> Empty
        
        Set RangoImagen = ActiveCell.Offset(0, -1)
        
        'Insertamos la imagen que corresponda al nombre de la columna A
        ActiveSheet.Pictures.Insert(RutaActual & "\Coches\" & RangoImagen.Value & ".jpg").Select
        'Ajustar tamaño a imágenes respetando relación de aspecto
        'Call FitPic
        'Ajustar tamaño a imágenes definiendo un alto y un ancho
        'Call FitPic_2
        
        'Activamos la siguiente fila
        ActiveCell.Offset(1, 0).Select
        
    Loop
    
    Range("A2").Select
    Application.ScreenUpdating = True
    
    On Error GoTo 0
    
End Sub

 

Si prefieres crear un catálogo de imágenes en Excel recurre a este artículo para conocer cómo se hace.