Discussion:
[Excel] Licz.jezeli - warunek w dwoch roznych kolumnach... filtrowanie... ogolnie ciezkie :)
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
blonDIE
2007-05-21 05:59:09 UTC
Permalink
Witam.

Mam taki problem, ze potrzebuje zliczyc w kolumnie ile wystepuje odpowiedzi
na pytanie w ankiecie. Wszystko jest proste jesli licze tylko dla jednego
warunku, bo uzywam funkcji :
aby zliczyc odpowiedzi "a" - =LICZ.JEZELI(J2:J42;"a") , dla "b" -
=LICZ.JEZELI(J2:J42;"b") itp.

Problem pojawia sie, kiedy potrzebuje rozbic wszystkie wyniki, dla
poszczegolnej grupy wiekowej lub innego kryteterium (np. rodzaj wykonywanej
pracy).
Jest 8 roznych kryteriow podzialu wszystkich wynikow, ale zawsze podzial
bedzie wedlug jednego.

Aby uproscic, dla takiej tabeli :

kol. A kol. B kol. C
1 a a b
2 a b b
3 c c a
4 c a a
5 a b a
6 b b a


Jak policzyc wszyskie "a" kiedy w kolumnie A wystepuje tylko "a" (to jest
kryterium podzialu), nastepnie wszystkie "b" dla tego samego warunku.
Nastepnie zmieniamy warunek dla kolumny A (na wystepowanie tylko i wylacznie
"b") i liczymy znowu wszystkie "a" i "b" z kol. B. .
Oczywiscie takie same dzialania musze zrobic dla kol. C.

Wizualnie zrobic cos takiego jest prosoto - auto filtr , w kolumnie A
wybieram "a" i reszta sama sie wyswietla. Niestety jesli wynikow w kol. B i
C itd. mamy ponad 100 to ciezko to na oko zliczyc.

Probowalem zrobic to za pomoca tabeli przestawnej, gdzie za strone
wstawialem kol. A - dla obliczenia z jednej kolumny wszystko pieknie sie
filtruje i sumuje, ale jesli dostawiam druga kolumne do wynikow - juz
wychodza glupoty. Jedyne co wymyslilem, to ze dla kazdej kolumy wynikow (w
tym przypadku kol. B i kol. C) musialm bym tworzyc osobne tabele przestawne
i w kazdej zmieniac "strone" dla zadanej grupy wynikow. Troche by tego bylo,
bo pytan w ankiecie jest 42...

Moze ktos ma jakis pomysl... z gory dziekuje.
--
-------
blonDIE
blonDIE
2007-05-21 06:54:50 UTC
Permalink
OK. W koncu udalo mi sie cos wygooglac ;)
http://www.mrexcel.com/tip083.shtml
Nalezy zainstalowac dodatek Sumy warunkowe (czy jak to tam na polski
przetlumacza).
Dla wczesniej wsponiangego przykladu wygladaloby to tak :

{=SUM(IF($A$2:$A$6="a";IF($B2:$B6="a";1;0);0))}
zatwierdzone ctrl+shi+enter

Ale pojawil mi sie kolejny problem... :)
Zauwazylem, ze niektorzy z ankietowanych wybrali po kilka odpowiedzi, i
czasem mam takie kwiatki w kolumnie : abc, bc, bcd.
Czy mozna to jakos z automatu zliczyc np. przy odpowiedzi "bcd", aby taka
odpowiedz zaliczala sie do wynikow dla "b", "c" i "d" ?
--
-------
blonDIE
blonDIE
2007-05-21 07:56:15 UTC
Permalink
Juz wiem czego konkretnie potrzebuje :)
Musze znalesc cos takiego, co pozwoli zadzialc jak autofiltr, w ktorym
ustawiony jest warunek "zawiera".

Po przeanalizowaniu (poprzez stworzenie makra) takiego autofiltra :

Selection.AutoFilter Field:=10, Criteria1:="=*c*", Operator:=xlAnd

wydaje sie, ze to czego szukam to znak "*".
Lecz niestety po zastosowaniu go w prostej funkcji :

=IF(J10="*c*";"ok";"not"), gdzie J10=bc, wypisuje mi "not".

Nie mam pomyslu...
--
-------
blonDIE
Tajan
2007-05-22 08:29:49 UTC
Permalink
Witam!
Post by blonDIE
OK. W koncu udalo mi sie cos wygooglac ;)
http://www.mrexcel.com/tip083.shtml
Nalezy zainstalowac dodatek Sumy warunkowe (czy jak to tam na polski
przetlumacza).
{=SUM(IF($A$2:$A$6="a";IF($B2:$B6="a";1;0);0))}
zatwierdzone ctrl+shi+enter
Ale pojawil mi sie kolejny problem... :)
Zauwazylem, ze niektorzy z ankietowanych wybrali po kilka odpowiedzi, i
czasem mam takie kwiatki w kolumnie : abc, bc, bcd.
Czy mozna to jakos z automatu zliczyc np. przy odpowiedzi "bcd", aby taka
odpowiedz zaliczala sie do wynikow dla "b", "c" i "d" ?
Zastosuj funkcję ZNAJDŹ.TEKST (SEARCH):
=SUMA(CZY.LICZBA(SZUKAJ.TEKST("*a*";A1:A100))*CZY.LICZBA(SZUKAJ.TEKST("*a*";B1:
B100)))
czyli:
=SUM(ISNUMBER(SEARCH("*a*",A1:A100)*ISNUMBER(SEARCH(""*a*"",B1:B100)))

Oczywiście, formuła tablicowa - zatwierdzana Shift+Ctrl+Enter.

Tajan

Alien
2007-05-21 15:45:42 UTC
Permalink
Post by blonDIE
Witam.
Mam taki problem, ze potrzebuje zliczyc w kolumnie ile wystepuje
odpowiedzi na pytanie w ankiecie. Wszystko jest proste jesli licze tylko
aby zliczyc odpowiedzi "a" - =LICZ.JEZELI(J2:J42;"a") , dla "b" -
=LICZ.JEZELI(J2:J42;"b") itp.
Problem pojawia sie, kiedy potrzebuje rozbic wszystkie wyniki, dla
poszczegolnej grupy wiekowej lub innego kryteterium (np. rodzaj
wykonywanej pracy).
Jest 8 roznych kryteriow podzialu wszystkich wynikow, ale zawsze podzial
bedzie wedlug jednego.
kol. A kol. B kol. C
1 a a b
2 a b b
3 c c a
4 c a a
5 a b a
6 b b a
Jak policzyc wszyskie "a" kiedy w kolumnie A wystepuje tylko "a" (to
jest kryterium podzialu), nastepnie wszystkie "b" dla tego samego warunku.
Nastepnie zmieniamy warunek dla kolumny A (na wystepowanie tylko i
wylacznie "b") i liczymy znowu wszystkie "a" i "b" z kol. B. .
Oczywiscie takie same dzialania musze zrobic dla kol. C.
Moze ktos ma jakis pomysl... z gory dziekuje.
Nie wiem czy Cię dobrze zrozumiałem...
kol. A kol. B kol. C kolumna D
Wiersz1 Warunek1 Warunek2 Warunek3 Wynik
Wiersz2 a a b formuła

Wiersz4 dane dane dane

=SUMA(($A$4:$A$1000=$A$2)*($B$4:$B$1000=$B$2)*($C$4:$C$1000=$C$2))
--
http://8nostromo.blogspot.com/
Loading...