Saltar al contenido

ejecutar modulo VB automáticamente a actualizar datos


Recommended Posts

publicado

Estimados,

utilizo en siguiente código VB para cambiar dinamicamente una imagen asociada a un shape cuando una celda cambia de valor.

"Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "B1" Then _

Me.Shapes("logo").Fill.UserPicture "C:\logos\" & Target & ".jpg"

End Sub"

el tema es que ademas utilizo un plug-in que refresca los datos desde un webservice, sin embargo al actualizar los datos el modulo no me cambia la imagen, a menos que se edite el campo en el cual se encuentra el "target" y luego enter, como información adicional, el target y el shape que hace referencia a la imagen se encuentran en una hoja que hace referencia a una tabla dinámica ubicada en otra hoja la cual se actualiza por medio del plugin.

saben como se resuelve esto de una manera automática, solo al actualizarse los datos y no al editar manualmente la celda?

Muchas gracias!

publicado

Además de lo que tienes, añade en Thisworkbook:

Private Sub Workbook_Open()

Sheets("Hoja1").Shapes("logo").Fill.UserPicture "C:\logos\" & Sheets("Hoja1").[b1] & ".jpg"

End Sub
[/CODE]

De esta forma, el logo se actualizará de forma automática cada vez que abras el archivo.

Por supuesto, debes sustituir "Hoja1" por el nombre de la hoja donde esté el logo.

publicado

Muchas gracias por tu respuesta, pero no me funciono :(.. en realidad quiero que se actualice justo en el momento que cambia el campo "b1" , pero este campo se actualiza por medio de un plugin y no por edición manual.

acá es donde tengo el problema, todos los datos se actualizan dinamicamente, menos el logo.

Espero que me puedan ayudar con este problema.

saludos y muchas gracias!

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.