ACCESS_podsvícení konkrétních polí

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Zamčeno
Berthin
nováček
Příspěvky: 34
Registrován: 20 čer 2011 11:26

ACCESS_podsvícení konkrétních polí

Příspěvek od Berthin »

Zdravím,
než bych to vysvětlil tak zkusím konkrétní příklad:

If [forms]![FormName1]![value]="a01" then
[Forms]![FormName2]![a01].backcolor=red
end if

If [forms]![FormName1]![value]="a02" then
[Forms]![FormName2]![a02].backcolor=red
end if
.
.
.
If [forms]![FormName1]![value]="aXX" then
[Forms]![FormName2]![aXX].backcolor=red
end if

V podstatě se mi na základě zafiltrovaného konkrétního řádku formuláře v DB (s ID aXX) vysvítí v jiném formuláři s mapou bod (pojmenovaný aXX). Vzhledem k tomu, že bodů v mapě mám přes 300 tak se chci zeptat jak moje řešení zkrátit. Není to poprvé co bych nějakou takovou fci využil.
Zatím v postatě pro každý řádek a bod mám konkrétní příkaz. Docela nelogický, vím, ale mě fakt nenapadá jak na to.
Děkuju moc za případné návrhy.
Martin B.
karel.laska
Level 2.5
Level 2.5
Příspěvky: 274
Registrován: 07 čer 2011 07:42

Re: ACCESS_podsvícení konkrétních polí

Příspěvek od karel.laska »

Zdravím,

snažil bych se do do formuláře 2 dostat hodnotu z formuláře 1 dle které se má podmínka obarvit pomocí dotazu.
Potom už lze použít podmíněné formátování jako v excelu.

S pozdravem

Karel Láska
Berthin
nováček
Příspěvky: 34
Registrován: 20 čer 2011 11:26

Re: ACCESS_podsvícení konkrétních polí

Příspěvek od Berthin »

Zdravím,
omlouvám se, ale byl jsem chvilku mimo. Moc to nechápu, tuhle variantu jsem zkoušel, ve formuláři 2 se mě vypisuje hodnota konkrétního bodu (a1-ax). Ale stejně nevím, jak nastavit aby pole se stejným názvem jako text v jiném poli změnilo barvu pozadí. Jestli to blbě popisuju, klidně pošlu svůj pokus o produkt:-)
Berthin
nováček
Příspěvky: 34
Registrován: 20 čer 2011 11:26

Re: ACCESS_podsvícení konkrétních polí

Příspěvek od Berthin »

vyřešeno pomocí tohoto:

For Counter = 1 To xxx
CtrlName = "a" & Counter
Set Ctrl = Me.Controls(CtrlName)
Ctrl.BackColor = lngWhite ..... nadefinování barvy
Next

For Counter = 1 To xxx
CtrlName = "a" & Counter
Set Ctrl = Me.Controls(CtrlName)
If CtrlName = [Forms]![nazev_pole] Then
Ctrl.BackColor = lngRed
End If
Next

Díky moc za rady a pomoc.
Martin
Zamčeno

Zpět na „Kancelářské balíky“