Etiquetas

Cargar y refrescar una imagen en Word desde VBA

En Word, podemos insertar un control ActiveX Imagen y cambiar sus propiedades desde VBA (Visual Basic Aplicaciones). El problema surge al cambiar la imagen a mostrar, mediante
Image1.Picture = LoadPicture(file)
, ya que no se actualiza o refresca en el documento de forma automática, lo cual en la versión completa de Visual Basic se hace fácilmente mediante
Image1.Refresh
, pero en VBA no tenemos esa opción disponible, al menos yo no la he encontrado. Para remediarlo, simplemente hay que añadir la siguiente linea de código en nuestra función :
ThisDocument.UpdateStyles
De esta forma conseguimos que se refresque automáticamente y muestre la imagen correcta.

2 comentarios:

  1. Hola Javier. Tengo este problema, estoy usando un Image y necesito mostrar muchas imagenes en el mismo Image, pero cuando le hago click por error a la imagen no me sigue cambiando la imagen. El Image1.refresh tampoco me funciona a pesar que tengo absolutamente todo instalado. El problema es cuando le doy click al Image, de ahi en adelante se trunca la imagen y no se actualiza. Espero me puedas ayudar. Saludos.

    ResponderEliminar
  2. Por cierto estoy usando VBA Excel 2016 32 Bits en un equipo con W10 64 Bit y 32 Gb de memoria Ram.

    ResponderEliminar