Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Funkcja Średnia (ze sporymi przeszkodami). Excel2003

22 Mar 2012 15:18 1315 12
  • Level 8  
    Witam.

    Mam taki oto zagwozdek:

    * Jest tabela z nazwiskami w pionie i pracującymi dniami miesiąca w poziomie
    * W komórkach są formuły , które po spełnieniu pewnych warunków zwracają określoną liczbę. Czyli w połowie miesiąca lewa część tabeli jest wypełniona liczbami a prawa - pusta (oczekują na "swój dzień").
    * Pusta - niestety tylko dla oka. Formuły tam zawarte z braku odpowienich danych zwracają #N/A (ukryte formatowaniem warunkowym).
    * Poproszono mnie o wprowadzenie formuły obliczającej średnią z całego miesiąca dla danego pracownika. Sprawa wydała mi się prosta (ŚREDNIA - i po sprawie). Jak się pewnie domyślacie - byłem zbytnim optymistą. Wszystko jest OK jeżeli wszystkie komórki sa wypełnione liczbami i obliczamy średnią za cały pełny miesiąc ale jest lipa w przypadku sprawdzenia średniej np. w połowie miesiąca - wynik jest wtedy #N/A (wyretuszowane komórki #N/A dają o sobie znać).

    * Może do ŚREDNIA dodać formułę LICZ.NIEPUSTE z możliwością pomijania komórek #N/A? (taka idea, choć sam nie mam pojęcia jak to złożyć)
    * Próbowałem, aby formuła zwracała zero zamiast #N/A. Pomijając fakt że mi się to nie udało, zrozumiałem że to i tak nie ma sensu bo zero jako liczba wypaczała by średni wynik.

    HELP :|
    [30.03.2021, webinar elektroda] Nowoczesna diagnostyka maszyn, monitorowanie i przewidywanie awarii. Zarejestruj się
  • Level 40  
    Zamiast "ukrywać" błąd #N/A formatowaniem warunkowym, umieść funkcję w
    Code: vb
    Log in, to see the code
    . W Excelu 2007 możesz wykorzystać jej skróconą wersję
    Code: vb
    Log in, to see the code

    Średnia powinna się wtedy policzyć poprawnie, jeżeli nie, to w Excelu 2007 masz funkcję: ŚREDNIA.JEŻELI(), pozwalająca podać warunek (np. >0) do liczenia średniej.
  • Level 8  
    No to jak to powinno wyglądać dla Ex2003 z tą formułą?:

    =WYSZUKAJ.PIONOWO(ADR.POŚR("Routes!"&ADRES(PODAJ.POZYCJĘ($B9,Routes!$B:$B,0),PODAJ.POZYCJĘ(C$3,Routes!$3:$3,0))),'Set SPORH'!$B$3:$C$34,2,0)

    Bo powiem szczerze że wyrzuca mi błąd.
  • Helpful post
    Level 40  
    W miejsce funkcja w moim przykładzie wstaw całą swoją funkcję, z pominięciem znaku = . W pierwszym przypadku musisz ją powtórzyć dwukrotnie.
    Swoją drogą to jeśli to jest funkcja, to nie powinna mieć średników zamiast przecinków oddzielających argumenty??
  • Level 8  
    Dziwne, prawda? Ale ze średnikami nie działa...

    Próbowałem zainstalować tego tasiemca w Twoją formułę ale nic z tego nie wychodzi - wyrzuca błąd w formule. Za to zadziałała ŚREDNIA.JEŻELI - i za to wielkie dzięki. Jeżeli byłbyś jednak tak miły i pomógł mi (czytaj: zrobił to osobiście :D ) ją wpasować byłoby fajnie, bo nie ukrywam że pomimo osiągnięcia tego zo chciałem - te komunikaty mnie denerwują trochę (widoczne przy zaznaczaniu).
  • Level 40  
    Jak wrzucisz przykładowy plik z danymi to zobaczę, bo skoro "zwykłe" wklejenie nie pomaga, to problem może być gdzie indziej...
  • Level 40  
    To tak: w komórkę C4 w Daily Target wstaw formułę:
    Code: vb
    Log in, to see the code
    i przeciągnij ją w lewo i w dół na wszystkie komórki.
    Wtedy średnią wyliczysz za pomocą zwykłej funkcji ŚREDNIA().
  • Level 8  
    Marcin, no niewiem - czy ja po prostu nie umiem wklejać czy co innego - ale po wklejeniu Twojej formuły wywala mi komunikat o błędzie. Rzeźnia - jak mawia moja córka. A u ciebie wszystko działa? Jeżeli tak, to może wstawiłbyś nieszczęsny plik?
  • Level 8  
    No i brak mi już słów. Wielkie dzięki się należy. Tylko dlaczego ja tego nie mogłem zrobić? Wchodzę w weekend w kiepskim nastroju :D Jeszcze raz dziękuję.
  • Level 40  
    Coś z tymi przecinkami zamiast średników mi się nie podoba... Może masz coś w Excelu ustawione nie tak jak trzeba?
    Może gdybyś wkleił swoją funkcję w moją podając przecinki zamiast średników, to by "łyknęło"? No ale grunt że już działa :)
  • Level 8  
    Też się zastanawiam. Przerabiam teraz kolejny problem z formatowaniem warunkowym (inny arkusz) i jak zawsze pobieram gotowe przykłady z internetu i je modyfikuję do swoich potrzeb. Wszędzie są średniki - nawet w przykładach z E2007 - a ja musze to zmieniać na przecinki. Wariactwo jakieś. Najgorsze że w domu w miarę szybko udaje mi się rozwiązać drobniejsze problemy samemu ale przy zapisywaniu (tryb zgodności z E2003) mam komunikat że to nie przejdzie w starszej wersji :cry: . Taki przykład:

    Mam kolumnę w którą wprowadzam listę pracowników z listy rozwijanej. Żeby było czytelniej sformatowałem komórki warunkowo: "jak pusta to wypełnij kolorem zielonym". Teraz chciałbym wstawić kolejną regułę: "jak zduplikuję nazwisko zmień czcionkę duplikatów na czerwoną". I wszystko działa ładnie na E2007. Przy zapisywaniu oczywiście feralny komunikat o niezgodności, więc wstawiam formułkę (z przykładów dla E2003) do warunkowego =LICZ.JEŻELI($zakres:$komórek,bieżąca_komórka)>1. No i działa, tylko wcześniejsze formatowanie (komórka na zielono) jest ignorowane. Eeech - kochany excel.