Cambiar el color de fondo de un campo de un formulario usando VBA

Escrito por Administrador

30 de noviembre de 2021

Hoy vamos a ver cómo cambiar el color de fondo de un campo de un formulario usando VBA.

Además, de camino, aprenderemos también a cambiar el color del texto y así mataremos dos pájaros de un tiro.

Esto es útil, por ejemplo, cuando queremos marcar uno o varios campos obligatorios que no se han rellenado en un formulario, para que el usuario sepa cuáles son.

También, es posible que queramos marcar un campo cuando los datos introducidos son incorrectos. Por ejemplo, introducir letras en el campo teléfono.

He adjuntado al final del post un archivo para que veais el código a implementar en vustros programas.

Se trata de un formulario en el que el color del texto y el color de fondo del campo van a cambiar al pulsar los botones del mismo.

bloquear-access-fecha

El código a implementar en cada botón es el siguiente,

Private Sub Color1_Click()

'Color de fondo azul y color de texto blanco

Me.Campo1.BackColor = RGB(0, 0, 255)
Me.Campo1.ForeColor = RGB(255, 255, 255)

End Sub

Private Sub Color2_Click()

'Color de fondo verde y color de rojo

Me.Campo2.BackColor = RGB(0, 255, 0)
Me.Campo2.ForeColor = RGB(255, 0, 0)

End Sub

Si pulsamos el primer botón, veremos como cambian los atributos del campo.

bloquear-access-fecha

Lo mismo sucede al pulsar el segundo botón.

bloquear-access-fecha

Espero que te haya sido de utilidad este post y que hayas aprendido tanto a cambiar el color de fondo de un campo de un formulario como el color de texto del mismo usando VBA.

Por último, quiero invitarte a compartir tus dudas en los comentarios o en el foro. Intentaré ayudarte en todo lo que pueda, y así aprenderemos todos.

Un saludo y hasta la próxima.

Si te ha servido y quieres donar

Descarga el archivo del ejemplo

6 Comentarios

  1. Avatar

    hola una consulta, tengo un informe en access y en el detalle del informe tengo unos campos usando la función =SiInm([SEMANA]=4;0;"") quiero que me cambie el color del fondo del campo texto haciendo esta correccion =SiInm([SEMANA]=4;[SEMANA].[cambiarcolordefondo] = rgb(0;0;0);"") pero no me funciona solo me muestra 0.
    me podria ayudar por favor

    Responder
    • Avatar

      Hola Jorge,

      ¿Por qué no usas el formato condicional?

      Saludos.

      Responder
  2. Avatar

    Me podrian enviar el código de los demás colores

    Amarillo RGB(?,?,?)
    Negro RGB(?,?,?)
    Rosa RGB(?,?,?)
    Marrón RGB(?,?,?)
    y alguno mas que me puedan pasar

    Responder
    • Avatar

      Hola Angel,

      No tienes más que abrir paint en tu ordenador, elegir el color de la paleta y darle a editar color. Te aparecerán los valores de rojo, verde y azul (RGB).

      Saludos.

      Responder
      • Avatar

        Hola buenos dias...!! gracias por la pronta respuesta!!
        Saludos y Gracias

        Responder
        • Avatar

          De nada, por aquí andamos para cualquier cosa.

          Saludos.

          Responder

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Últimas publicaciones

Categorías

diciembre 2023
LMXJVSD
 123
45678910
11121314151617
18192021222324
25262728293031

Debates en el foro

Avatar
Como hacer una consulta
Avatar
Obviar celdas en blanco

Contacto