Pogojno oblikovanje (Excel 2003)

Pomoč pri delu z MS Excelom
Odgovori
Emol
Prispevkov: 36
Pridružen: To Mar 13, 2007 11:09 pm
Kraj: Hrastnik

Pogojno oblikovanje (Excel 2003)

Odgovor Napisal/-a Emol »

Ali je možno s kakšno VBA razširitvijo povečati število pogojev pri pogojnem oblikovanju.
Na listu imam 7 oseb vpisanih v različne vrstice in kolone.
Kako naj bodo celice, ki "vsebujejo " osebo1 rdeče, osebo2 modra ... oseba7 rumena. Navadno pogojno oblikovanje sprejeme največ 3 pogoje.

Hvala
admin
Site Admin
Prispevkov: 3692
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Pozdravljeni,

Pogojnega oblikovanjase ne da razširjati. Lahko pa se napiše VBA procedura, ki pa lahko naredi pač karkoli želi tisti, ki jo programira. V vašem primeru se je pač potrebno zapeljati preko območja nekih celic in se pri vsaki vprašati ali je v njej nek iskan tekst in če je potem naj to celico pač obarva z neko barvo.
lp,
Matjaž Prtenjak
Administrator
Emol
Prispevkov: 36
Pridružen: To Mar 13, 2007 11:09 pm
Kraj: Hrastnik

Odgovor Napisal/-a Emol »

Hvala za odgovor.
V accessu bi to zadevo uredil skozi zanko (DO UNTIL) in SELECT CASE stavek.
Kako se pa sprehodim po območju celic in ali lahko tudi v excelu uporabim SELECT CASE stavek.
admin
Site Admin
Prispevkov: 3692
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Pozdravljeni,

VBA v Excelu in Accessu je isti programski jezik, kar pomeni, da ima iste programske konstrukte. V VBA-ju se skozi sezname (skupek celic je seznam) najlažje sprehodite z zanko 'for each':

Koda: Izberi vse

Sub ObdelajCelice()
  Dim celica
  
  For Each celica In Range("A1:X100")
    Select Case celica.Value
      Case "mojca": celica.Interior.ColorIndex = 6
      Case "matjaž": celica.Interior.ColorIndex = 13
    End Select
  Next
End Sub
lp,
Matjaž Prtenjak
Administrator
Emol
Prispevkov: 36
Pridružen: To Mar 13, 2007 11:09 pm
Kraj: Hrastnik

Odgovor Napisal/-a Emol »

Še enkrat hvala lepa.
Problem je bil v izbiri zanke. Do sedaj se nisem ukvarjal z VBA-jem v Excelu. Napako bo treba popraviti.
Odgovori