Forum Gry Hobby Sprzęt Rozmawiamy Archiwum Regulamin

Forum: pytanie z excela - złożona formuła

28.03.2013 13:30
1
zanonimizowany255
43
Generał

pytanie z excela - złożona formuła

potrzebuje użyć funkcji średnia.geometryczna
i ponieważ to duża ilość różnorodnych danych, wiec warunek żeby formuła sama wiedziała co liczyć. tak jak działa funkcja suma.jeżeli
tylko średnia.geometryczna nie ma wbudowanego dodatku jeżeli.
czy ktoś wie jak napisać tą formułę żeby tak samo bylo uwarunkowane co ma liczyc?

(tam jest jeszcze kilka dodaktowych kwestii, wiec prosze konkretnie o tą formułę)

28.03.2013 13:34
erton
2
odpowiedz
erton
63
Fink

Jest w excelu funkcja JEŻELI i chyba o to Ci chodzi, bo z treści posta nie bardzo rozumiem.

28.03.2013 13:46
3
odpowiedz
zanonimizowany255
43
Generał

wiesz jak działa funkcja SUMA.JEŻELI?

to to samo co funkcja SUMA, ale z dołożonym warunkiem. Ale ręczne połączenie funkcji SUMA i JEŻELI to nie to samo, tak nie zadziała. przynajmniej ja tego nie umiem złożyć z tych dwóch osobnych funkcji.

mam ponad tysiac wierszy w excelu. podzielonych na 250 grup. kazda grupa ma inna ilosc wierszy. musze policzyc te grupy srednia.geometryczna
tylko nie chce przy kazdej grupie (czyli 250) zmieniac zakresu danych.
chce zeby funkcja srednia.geometryczna sa sprawdzila ktore dane naleza do danej grupy i wtedy je policzyla.

czyli tak jak dziala suma.jezeli
tylko ja musze koniecznie uzyc srednia.geometryczna

28.03.2013 14:04
erton
4
odpowiedz
erton
63
Fink

OK, już rozumiem. To ja bym kombinował to załatwić przez tabelę przestawną, ale tam znowu potrzebujesz zrobić pole obliczeniowe ze średnią geometryczną, nie mam pewności czy się da.

28.03.2013 14:08
5
odpowiedz
zanonimizowany255
43
Generał

jak pisałam - potrzebuje tej KONKRETNEJ funkcji.
tabela odpada, bo musze to miec w jednym arkuszu. miedzyinnymi dlatego, ze mniedzyczasie niektore wiersze beda odrzucane i musze na biezaco widziec wynik. to czesc duzo bardziej rozbudowanego arkusza.

28.03.2013 14:39
Meghan (mph)
6
odpowiedz
Meghan (mph)
97
Tarzana przez Tarzana

czy musisz w każdym momencie widzieć średnie dla każdej grupy, czy wystarczy widzieć jedną średnią, dla konkretnej podanej grupy?

Jeśli pierwsza opcja - nie wiem, przy drugiej wystarczy:
- w jedną komórkę wpisywać wyznacznik (nazwę) grupy,
- w komórce obok wpisać formułę na średnią geometryczną, która będzie pobierała dane z kolumny pomocniczej
- w kolumnie pomocniczej użyć zwykłej funkcji jeżeli, która jeśli nazwa grupy w wierszu = nazwa grupy w zdefiniowanej komórce, zwróci wartość która ma być liczona do średniej, jeśli nie, wpisać dowolny tekst, np. "-"

Można też stworzyć wiele kolumn pomocniczych - tyle ile grup i np. je schować, ale przy dużej liczbie grup jest to mało wydajne. Niemniej można, a przy sensownym adresowaniu nadal jest to pewna automatyzacja - piszesz formuły raz, a potem przeciągasz na potrzebny obszar.

28.03.2013 14:57
7
odpowiedz
zanonimizowany255
43
Generał

może słowo "grupy" było tu przeze mnie niepotrzebnie użyte.
to nie termin excelowy, tylko ogólnym opis.
dostaje najzwyklejsze dane bez żadnych formuł ani formatowania.
a interesujący mnie wycinek wyglada tak (teoretczny przyklad:
w lewej kolumnie nazwy np 250 miast, a w prawej np ceny za m2
i w kazdym miescie sa jeszcze inne dane np ulica czy cos. stad wiele danych na 1 miasto.
wierszy jest wiec okolo 1 000.
no i teraz bez tabeli przestawnej konkretnie średnia.geomatryczna mam dla kazdego miasta.
ja juz z cala reszta sobie poradze, tylko to, zeby ta formula po wskazaniu jej nazwy miasta sama wiedziala ktore ceny ma policzyc.

28.03.2013 15:29
iNfiNity!
8
odpowiedz
iNfiNity!
98
NSX

nie wiem, czy kumam wygląd pliku (mógłbyś załączyć dła ułatwienia), ale może zwykłe =suma.jeżeli()/licz.jeżeli() ?

28.03.2013 15:39
9
odpowiedz
zanonimizowany255
43
Generał

ale to jest średnia GEOMETRYCZNA, a nie arytmetyczna.
a na raty sie nie da, bo nie ma funkcji iloczyn.jeżeli.

28.03.2013 15:48
10
odpowiedz
Mathmi Thenthur
47
Konsul

Jeżeli dobrze rozumiem, o co Ci chodzi, to chyba można to zrobić tak jak w pliku poniżej:

http://www.sendspace.pl/file/107b6c12e59582a76d08a7a

Zastosowałem funkcję tablicową, która mnoży przez siebie liczby z wiersza, w którym jest spełniony warunek (zgodność nazwy miasta u Ciebie) a następnie z tego iloczynu jest wyciągany pierwiastek stopnia równego liczbie wierszy z danym miastem.

U mnie w pliku tekst do sprawdzenia (u Ciebie nazwy miasta) jest w kolumnie A, liczby są w kolumnie B, warunek jest w komórce F1, a wynik pokazuje się w komórce D5.

28.03.2013 16:05
11
odpowiedz
zanonimizowany255
43
Generał

mathmi->

na szybko spojrzalam. wyglada na to ze dziala.
chociaz przy uzyciu tablic to myslalam ze wsadzisz jezeli w funkcje srednia geometryczna bez rozbijania na dwie osobne :)

swoja droga jestem ciekawa czy tak normalnie w excelu tez sie jednak da. bo na piechote, piszac kilometrowa funkcje to da sie napisac. a zwykle jak cos w excelu da sie zrobic na piechote powtarzajac ruch wielkokrotnie to tez jest mechanizm zeby to zrobic za jednym zamachem.

28.03.2013 16:40
12
odpowiedz
Mathmi Thenthur
47
Konsul

Kilometrowa to ta funkcja zdecydowanie nie jest ;)

Warunków z jeżeli nie bardzo można wsadzić bezpośrednio do funkcji średnia.geometryczna. O ile możesz w ten sposób "wyeliminować" wpływ wierszy innych niż wybrane przez Ciebie miasto z iloczynu (np. wstawiając 1 tam, gdzie miasto się nie zgadza), o tyle stopień pierwiastka będzie za wysoki i przez to średnia będzie błędna (bo excel będzie liczył wszystkie wiersze obojętnie jakiego miasta dotyczą).

Rozbijając funkcję na dwie zarówno iloczyn jest prawidłowy, jak i stopień pierwiastka.

29.03.2013 09:49
13
odpowiedz
Mathmi Thenthur
47
Konsul

Jednak można to też wsadzić do jednej funkcji, np. tak:

=ŚREDNIA.GEOMETRYCZNA(JEŻELI(A3:A8=$F$1;B3:B8;""))

gdzie, A3:A8 to kolumna z nazwami miast, F1 to wybrane miasto, a B3:B8 to liczby liczone do średniej.

04.04.2013 17:47
14
odpowiedz
zanonimizowany255
43
Generał

mathmi -> formuły tablicowe nie działają ze wszystkimi funkcjami.

sam możesz sobie wkleić to co napisales do excela i zobaczysz, ze nie filtr nie działa. funkcja łapie wszystko jak leci.

04.04.2013 18:04
15
odpowiedz
Mathmi Thenthur
47
Konsul
Image

No wkleiłem i działa bez zarzutu, jak widzisz na obrazku.

Średnia geometryczna z 8 i 2 to 4. 4 na pewno nie jest średnią geometryczną ze wszystkich liczb, które wpisałem.

05.04.2013 09:43
16
odpowiedz
zanonimizowany255
43
Generał

zwracam honor. działa. bardzo dziękuję.

a generalnie moja formuła wygląda tak:
(przepisuje ręcznie, wiec moge zrobic małą literowke)

=jeżeli.błąd(zaokr(średnia.geometryczna(jeżeli($b$2:$b$1000=$b2;$ax$2:$ax$1000;""));3)*jeżeli((b2=b1);x;1);"x")

używam jej dwa razy. więc zaoszczędziłeś mi zaznaczania zakresu dokładnie 500 razy.

baardzo dziękuję.

Forum: pytanie z excela - złożona formuła