Nastavak ideje koju je dao ib.kroki je da se tako formiraju liste za validaciju u kojima će se imena naći na vrhu, a prazne stavke na dnu.
To može da se postigne koristeći funkciju INDEX u matričnoj formuli. Prethodno je potreno izračunati koliko ima onih koji rade odnosno ne rade i ja sam to postavio u C1, D1 i E1 na listu Radnik.
Da se ograničimo na one koji rade. U primeru je uzet opseg od drugog do desetog reda. Matričnu formulu:
Code:
=IF(ROWS($B$2:B2)>$C$1;"";INDEX($A$2:$A$10;SMALL(IF(B$2:B$10="radi";ROW($A$2:$A$10)-ROW($A$2)+1);ROWS(B$2:B2))))
uneseš u C2 i zavržiš sa CTRL+Shift+Enter. Onda kopiraš ovu formulu u ceo opseg od interesa (C3:C10).
(Slično rešenje već je bilo na forumu
http://www.elitesecurity.org/t406400-0#2661955 gde je dato i objašnjenje ove formule)
Sada je još ostalo da definišemo listu za validaciju. Koristimo imenovanu listu
radi, ali umesto da definišemo fiksni opseg C2:C10 za ovu listu uzmemo samo neprazne ćelije iz ovog opsega. Pošto su one na vrhu, to ćemo postići sa funkcijom OFFSET
Code:
=OFFSET(Radnik!$C$2;0;0;COUNTA(Radnik!$C$2:$C$10)-COUNTBLANK(Radnik!$C$2:$C$10);1)
koju unesemo u Name Manager-u
Na analologni način formiraš liste za validaciju za one koji ne rade i rade samo pola radnog vremena.
[Ovu poruku je menjao Jpeca dana 18.08.2010. u 11:15 GMT+1]
Nije to loše Rembrante, samo što ne bi dodao još malo boje?