[ mirjanagb @ 15.01.2010. 14:08 ] @
imam jedan grafik a pored podatke, pa sa drop down listom menjam nazive i podatke.
na grafiku je linija koja uvek pocinje sa 100. x osa su datumi a y brojevi.

e sad ja sam namestila jedan makro da automatski popravi grafik liniju sa formulom izracunatom u excelu tako sto trazi minimum i maksimum u podacima (to je jedna kolona)
primer: u koloni je minimum 73,36 a max 108,78
ja oduzmem round(round(max) - round(min)) i dobijem 5. i onda mi je minimum round(min-5)/5)*5-5 i dobijem 60
isto tako i maximum round(max+5)/5;0)*5 i dobijem 115

e sad u ovom slucaju je dobro, jer y osa pocinje sa 60 i razmak je 5 ... ali desi se npr da je minimum 46 a razmak 5 i onda linija ne pocne od sto nego npr od 99, 101 ili tako nesto.

da li mogu ja nekako jos uz ovu formulu dodati if ili neku drugu tako da kad je razmak paran minimum pocne sa nekim parnim brojem (tako isto i za max)

ili nekako drugacije da resim problem jer ima dosta podataka, a ja ne mogu rucno da menjam i lepo formatiram svaki put grafik.
[ Jpeca @ 16.01.2010. 22:34 ] @
Ne znam da li sam dobro razumeo. Sa podacima koje si dala round(round(max) - round(min)) nije 5, a minimum prema funkciji round(min-5)/5)*5-5 uvek je deljiv sa 5, dakle ne može da bude 46?

Pretpostavljam da želiš da odrediš početnu vrednost za Y osu. Uslovi su da početna vrednost bude manja od minimuma i da jedan od podeoka na y osi mora da ti bude na vrednosti 100.

Pretpostavimo da veličina podeoka nije uvek 5 (kao u primeru) nego da može da bude neki ceo broj 1,2,3,... Označimo veličinu podeoka na Y osi sa POD.

Između 100 i početka skale mora da bude ceo broj podeoka. Početak skale mora da bude manji od Min. Broj podeoka između početka Y ose i vrednosti 100 možemo odrediti funkcijom RoundUP koja zaokružuje na prvu veću vrednost:
=ROUNDUP((100-Min)/Pod;0)
U tom slučaju početna vrednost na Y skali biće kad ovaj broj podeoka pomnožimo sa veličinom podeoka i oduzmemo od 100.
=100-ROUNDUP((100-Min)/Pod;0)*Pod

Na ovaj način izračunata početna vrednost može da se poklopi sa minimumom, tako da minimum padne na x osu. Ako hoćeš da se od toga obezbediš dodaj još jedan podeok ispod npr.

=100-ROUNDUP((100-Min)/Pod+1;0)*Pod
[ mirjanagb @ 18.01.2010. 11:30 ] @
hmm iskreno, nije mi ni pala na pamet opcija da se nekako drugacije moze postaviti zadatak da bi sadrzalo 100 u y osi.

da bih dobila 100 dodavala bih uvek 2+ ili 2* round (na min ili max), pa na kraju /10/4/2, ali naravno nikad nije funkcionisalo za sve.

ovde sam umesto Pod+1 stavila +2 jer imam legendu ispod pa mi treba veci min na grafiku.


za sad ovako radi perfektno.

hvala jos jednom na pomoci ... sta drugo da kazem!!!