Cambiar la imagen de un botón de comando mediante vba

una vez más. 

Mi pregunta es la siguiente: En una hoja de excel he colocado dos imágenes a las que he asignado sendas macros. Una de ellas abre un formulario que me permite incrementar unos valores y la otra, abre el mismo formulario pero para disminuirlos. En ese formulario querría colocar algo parecido a un Spinbutton, pero, en lugar de que salgan las dos flechitas (aumentar y disminuir, Spinbuttondown y Spinbuttonup) que salga solo la que corresponde (Si lo abro para incrementar, Spinbuttonup, y si lo abro para disminuir Spinbuttondown) Como no encuentro la forma de hacer esto, he pensado en poner un botón de comando que pueda cumplir las dos funciones dependiendo de qué macro sea la que "llama" al formulario. Esto lo he conseguido, pero querría que, en el botón, en lugar de un texto, aparezca una imagen (flecha hacia arriba para aumentar y flecha hacia abajo para disminuir). Es decir, querría poder cambiar la imagen mediante vba.

Al hacer click en la imagen que tiene asignada la macro "aumentar" se abre el formulario (en el cual hay un textbox - textbox1- que toma el valor "aumentar" y si pulso en la otra imagen (disminuir) se abre el mismo formulario, pero el textbox toma el valor "disminuir".

Bien, en el evento initialize del formulario pongo:

If textbox1 = "aumentar" then

commandbutton1 .picture = flechaarriba.jpg

else: commandbutton1.picture = flechaabajo.jpg

end if

Donde flechaarriba y flechaabajo son dos imágenes guardadas en la misma carpeta. Pero no funciona, me dice que no coinciden los tipos. Con la propiedad Caption no tengo problemas, lo hace bien, pero con las imágenes no sé cómo hacerlo...

¿Me podríais indicar cómo debo "llamar" a la imagen correspondiente si es que es posible hacerlo?

1 respuesta

Respuesta
1

[email protected] es mi correo ahora mismo puedo ver tu petición y ver como agregarte la macro

¡Gracias Aneudys por tu ayuda!, pero ya lo solucioné gracias a Carlossolooffice. Ahora bien, estoy comprobando que parece que no aparece la respuesta de Carlos, y tampoco aparece el mensaje que envié agradeciéndole su ayuda (además valoré la respuesta). No sé si es fallo de mi navegador. En cualquier caso, ya lo pude solucionar. No entiendo cual es el motivo de que no aparezcan todas las respuestas. Es una faena, ya que, si no aparecen, vosotros estáis invirtiendo un tiempo en una cuestión que ya está solucionada... Lo siento de veras. 

Estaré atento para ver si se ve la solución.

Muchísimas gracias otra vez por tu interés y tu tiempo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas