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 *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Últimas publicaciones

Categorías

abril 2024
LMXJVSD
1234567
891011121314
15161718192021
22232425262728
2930 

Debates en el foro

Avatar
Buscar Datos en Columnas
Avatar
Formularios con ADO

Contacto