Codigo para cambiar el color de un botón en vb excel

Un botón debe agregar registros en una hoja1, la intención es que al darle clic al botón q inicialmente tiene propiedad backstyle. Color1, este cambie de color a backstyle. Color2, para tener la seguridad de que se agrego el registro, pero tiene que volver a su color original, ¿cuál sería el código?

1 respuesta

Respuesta
1

No sé si el botón lo tienes en un formulario o incrustado en una hoja. Te lo voy a explicar para este segundo caso. Por cierto backstyle. Color1 no existe lo que existe es backcolor = color1 lo haré de esa forma
Sea la Hoja1 con el botón CommandButton1, que el color normal es amarillo y queremos ponerlo en verde durante 5 segundos

En la subrutina de hacer click en el botón pon esto

Private Sub CommandButton1_Click()
If SeAgregoElRegistro Then
  CommandButton1.BackColor = vbGreen
  Application.OnTime Now + TimeValue("00:00:05"), "DevolverColor"
End If
End Sub

Y en un módulo de Visual basic introduce esta subrutina para devolver el color original

Sub DevolverColor()
  Worksheets("Hoja1").CommandButton1.BackColor = vbYellow
End Sub

Y eso es todo, si hay que hacer alguna variación y no sabes cómo dímelo. Y si ya está bien no olvides puntuar.

Si el botón estuviese en un formulario UserForm1 en vez de la Hoja1 la única diferencia seria estaría en la subrutina Devolver color que sería.

Sub DevolverColor()
  UserForm1.CommandButton1.BackColor = vbYellow
End Sub

Cuando escribí

If SeAgregoElRegistro Then

No hay que escribir eso literalmente sino la condición correspondiente a que ese haya agregado el registro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas