Strona 1 z 1
Pole wyboru oraz liczenie formułą w zależności od opcji
: pt gru 14, 2012 9:48 pm
autor: Paweł Poz
Witam!
Chciałbym stworzyć formułę obliczającą wynagrodzenie pracownika.
Problem polega na tym, że mam 3 różne grupy wynagrodzeń.
Chciałbym, aby pole po nazwisku było polem wyboru (lista zamknięta np. opcja A, B, C) i w zależności od wybranej opcji aby w innym polu dane zliczały się wg. różnych formuł (np. w opcji A, liczą się godziny pracownika razy 10zł, w opcji B 20zł itp).
Ktoś jest w stanie mi pomóc?

Re: Pole wyboru oraz liczenie formułą w zależności od opcji
: pt gru 14, 2012 11:34 pm
autor: Jan_J
W sprawie list wyboru: patrz
http://forum.openoffice.org/pl/forum/vi ... f=9&t=1510 -- lista wyboru z wartościami zdefiniowanymi w warunkach poprawności komórki/obszaru; kilka wariantów
W sprawie dopasowania formuły: najprościej z warunkiem =jeżeli()
Re: Pole wyboru oraz liczenie formułą w zależności od opcji
: sob gru 15, 2012 8:07 pm
autor: Paweł Poz
Wielkie dzięki za odpowiedź.
Mam tylko problem z tym jeżeli
Tzn. nie stanowi dla mnie problemu wpisanie formuły gdy mam do rozróżnienia jedynie dwa warianty. Ale ja chciałbym wpisać tych wariantów przynajmniej 4...
Re: Pole wyboru oraz liczenie formułą w zależności od opcji
: sob gru 15, 2012 8:22 pm
autor: Jan_J
Używając wbudowanych funkcji możesz zagnieżdżać funkcję warunkową:
=jeżeli(test1; wartość1; jeżeli(test2; wartość2; ...))
albo
=jeżeli(test1; jeżeli(test11; ...; ...); jeżeli(test21; ...; ...))
Jak widać, brakuje operacji switch / case.
Jeżeli napiszesz sobie w Basicu (Narzędzia/Makra/Basic) funkcję postaci
Kod: Zaznacz cały
function nazwamojejfunkcji(argument1, argument2) as double
rem tu dowolny kod Basica w czystym języku, bez odwołań API
nazwamojejfunkcji = wartoscwynikowa
end function
to możesz jej użyć w formule.
Na przykład
Kod: Zaznacz cały
function tescik1(a as double, b as integer) as double
rem a^b dla a >=0; w przeciwnym razie a
if a >= 0.0 then
tescik1 = a^b
else
tescik1 = a
endif
end function
function tescik2(a as double, b as integer) as double
rem a^b dla a >=0; w przeciwnym razie a
select case a
case >= 0
tescik2 = a^b
case < 0
tescik2 = a
end select
end function
użyjesz jej po prostu =tescik1(1;2) albo =tescik1(a1;b3).
Szczegóły:
http://wiki.openoffice.org/wiki/Documen ... /Branching
Re: Pole wyboru oraz liczenie formułą w zależności od opcji
: sob gru 15, 2012 10:34 pm
autor: Paweł Poz
Działa!!
Nawet takiemu humaniście jak mi

Wielkie dzięki!
Re: Pole wyboru oraz liczenie formułą w zależności od opcji
: czw maja 16, 2013 4:49 pm
autor: nobody13
Widzę, że nie tylko ja mam takie problemy. Dzięki za podpowiedź
