Ciclo para dar formato a varios controles en VBA Access

En un formulario llamado "Diagramas" capturo información de sub-ensambles que se compone de varios cables.

Requiero que al asignar valores a los campos Cable01, Cable02, ..., CableN se modifique el formato de los campos Color01, Color02, ..., ColorN

Tengo la siguientes sentencias para definir el color:

         RGBV = DLookup("[RGBVP]", "Colores", "[Color] =" & "Right(Forms![Diagramas]!Cable01, 2)")

         P1 = InStr(1, RGBV, ",")
         P2 = InStr(5, RGBV, ",")
         V1 = Left(Trim(RGBV), InStr(1, RGBV, ",") - 1)
         V2 = Mid(Trim(RGBV), P1 + 1, P2 - P1 - 1)
         V3 = Right(Trim(RGBV), Len(Trim(RGBV)) - P2)

         Forms![Diagramas]!Color01.BackColor = RGB( V1, V2, V3)

"V1", "V2" y "V3" dependen del valor de los últimos dígitos de "Cable01"

Mi intención es asignar formato para varios campos con nombres consecutivos (Color01, Color02, Color03, ..., ColorN) evitando escribir las sentencias repetidamente y usar el procedimiento para cada selección de cables.

Desconozco si es posible realizarlo mediante un ciclo, requiero un código algo así:

          For index = 1 to 33

         RGBV = DLookup("[RGBVP]", "Colores", "[Color] =" & "Right(Forms![Diagramas]!Cableindex, 2)")

          Forms![Diagramas]!Colorindex.BackColor = RGB( V1, V2, V3)

         Next

1 Respuesta

Respuesta
1

Mauricio: En principio el tema que comentas, no es muy difícil de resolver, pero si un poco extenso de explicar y sin tener delante la BD y sus Objetos sería muy difícil acertar y el post se alargaría innecesariamente. Siendo así, te propongo un par de alternativas, si es que no tienes datos personales y/o confidenciales.

1.- Que pongas la BD en un Servidor de los varios que hay en la nube y cites aquí el enlace.

2.- Que me envíes la BD a [email protected] y cites alguna explicación complementaria a lo que ya has escrito, si lo consideras relevante.

En cualquiera de los dos casos, puedes inventar datos si es que tuvieras del tipo que te cito arriba y facilitar la BD. Un saludo >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas