Liczenie warunku

Użytkowanie arkusza kalkulacyjnego
Krzycho.K
Posty: 4
Rejestracja: wt sie 22, 2017 9:36 am

Liczenie warunku

Post autor: Krzycho.K »

Mam wielką prośbę
Tworzę stosunkowo prosty ”grafik pracy” w którym min. chciałbym, aby w danym zakresie komórek np. <A1:A31) formuła wyrzucała ilość wystąpień ciągu(ów) 6 tych samych znaków ?.

W jakiej formie to ująć ?. Z góry dziękuję za pomoc
OpenOffice 4.1.2
Awatar użytkownika
Jermor
Posty: 2255
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Liczenie warunku

Post autor: Jermor »

Zastosuj funkcję LICZ.JEŻELI(zakres komórek;wyszukiwany ciąg)
w Twoim przykładzie np. LICZ.JEŻELI(A1:A31;"ABCDEF")
Nie są rozróżniane wielkości liter.
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Krzycho.K
Posty: 4
Rejestracja: wt sie 22, 2017 9:36 am

Re: Liczenie warunku

Post autor: Krzycho.K »

Dziękuję za odpowiedź ....
Niezupełnie jednak o to mi chodzi. Raczej o wynik ile razy pojawi się w zakresie (A1:A31) określony ciąg znaków.
Np. mamy coś takiego 1111 333 2222 111111 2222 111111 - oczekuję wyniku 2 - bo w tym zakresie dwukrotnie wystąpił ciąg sześciu cyfr "1 "
OpenOffice 4.1.2
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Liczenie warunku

Post autor: belstar »

Formuły tablicowe zatwierdzasz Ctrl+Shift+Enter

Kod: Zaznacz cały

=SUMA((DŁ(A1:A31)-DŁ(PODSTAW(LITERY.WIELKIE(A1:A31);LITERY.WIELKIE(D1);"")))/DŁ(D1))
Ctrl+Shift+Enter

lub

Kod: Zaznacz cały

=SUMA(INDEKS((DŁ(A1:A31)-DŁ(PODSTAW(LITERY.WIELKIE(A1:A31);LITERY.WIELKIE(D1);"")))/DŁ(D1);0;0))
Ctrl+Shift+Enter

W komórkę D1 wpisujesz szukaną frazę.
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Awatar użytkownika
Jermor
Posty: 2255
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Liczenie warunku

Post autor: Jermor »

Sądzę belstarze, że nie o to chodzi Krzychowi.K. Co prawda napisał że chodzi o, cytuję: "określony ciąg znaków" a to sugeruje, że wie co chce znaleźć.
Funkcja LICZ.JEŻELI to mu policzy. Zatem chodzi o coś innego. Myślę, iż nie wiadomo jaki jest poszukiwany ciąg sześciu znaków a policzyć należy ile wystąpiło jakichś jednakowych ciągów sześcioznakowych.
Chyba, że już zupełnie czegoś nie załapałem.
Jeśli chodzi o Twoją formułę, to chyba zbytnio ją skomplikowałeś. Zbudowałbym taką formułę tablicową:
=SUMA((A2:A31)=D1) , w której w D1 znajduje się poszukiwana fraza
albo aby uzależnić się od wielkości liter
=SUMA(PORÓWNAJ(A1:A31;D1))
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Liczenie warunku

Post autor: belstar »

Ja zrozumiałem to tak:
Mam w komórce ciąg znaków

Kod: Zaznacz cały

aaa bbb ccc aa bb aaa
poszukuję ciągu aa, który w tej komórce występuje jeden raz, więc formuła ma zwrócić 1. Gdybym poszukiwał np. ciągu aaa ma zwrócić 2, bo tyle razy występuje taki ciąg. I to wszystko jeszcze rozszerzone na zakres A1:A31. Ma przejrzeć wszystkie komórki zakresu i zwrócić ilość wystąpień poszukiwanej frazy. Być może się mylę, ale to powinien rozstrzygnąć autor tematu.
Twoje formuły sprawdzą się tylko w sytuacji gdy poszukiwany ciąg występuje sam w komórce, ale w takiej sytuacji podejrzewam nie byłoby tematu, LICZ.JEŻELI policzy to bez problemu.
Także czekamy na zdanie autora.

Pozdrawiam
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Awatar użytkownika
Jermor
Posty: 2255
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Liczenie warunku

Post autor: Jermor »

Tak, to prawda. Uznałem, że każdy przytoczony przez Krzycha.K ciąg to zawartość oddzielnej komórki.
Twój punk widzenia zmienia istotę rzeczy.
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Krzycho.K
Posty: 4
Rejestracja: wt sie 22, 2017 9:36 am

Re: Liczenie warunku

Post autor: Krzycho.K »

Dziękuję za zainteresowanie tematem !
Po zapoznaniu się z waszymi propozycjami z góry przepraszam, bo jednak swoje pytanie sformułowałem nieprecyzyjnie, a sprawa wydaje się być dużo prostsza.
Powielę swój poprzedni post uzupełniajac o dodatkowy komentarz:
Oczywiście interesuje mnie wynik ile razy pojawi się w zakresie komórek np (A1:A31) lub (A1:AH31) określony ciąg cyfr - 1 lub 2 lub 3.
Np. mamy coś takiego 1111 333 2222 111111 2222 111111 - każda z cyfr jest w osobnej komórce !. W tym przypadku oczekuję wyniku 2 - bo w tym zakresie dwukrotnie wystąpił ciąg sześciu cyfr "1 "
OpenOffice 4.1.2
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Liczenie warunku

Post autor: belstar »

Dla pewności wstaw jakiś plik z przykładem, bo stwierdzenie:
Krzycho.K pisze:każda z cyfr jest w osobnej komórce
nie jest dla mnie jednoznaczny tzn. sześć komórek po kolei z cyfrą 1 (pojedyncza liczba), czy ile komórek jest z zawartością sześciu jedynek. Będzie łatwiej zrozumieć twój problem.
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Awatar użytkownika
Jermor
Posty: 2255
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Liczenie warunku

Post autor: Jermor »

Krzycho.K pisze:sprawa wydaje się być dużo prostsza
niestety ale nie. Jest dużo bardziej skomplikowana.
Ja to rozumiem tak:
w obszarze komórek od A1 do A31 wpisywane są pojedyncze cyfry-symbole 1, 2 lub 3. Należy stwierdzić czy niektóre z tych cyfr nie powtarzają się w tych komórkach sześć razy po kolei. Jeśli tak to należy policzyć ile takich grup cyfr wystąpiło.
Pytanie. Czy jeśli wystąpi np. układ komórek 111111 a w innym miejscu 333333 to są to dwa wystąpienia grup szóstkowych?
Jak należy postąpić jeśli każdy symbol trzeba analizować odrębnie?
Krzycho.K pisze:mamy coś takiego 1111 333 2222 111111 2222 111111
W ten sposób podany ciąg sugeruje, że każda z grup cyfrowych to zawartość oddzielnej komórki. Napisałeś, że analizowany obszar to wiersze od 1 do 31. Podanych cyfr jest 27 a wliczając spacje (bo może niektóre komórki mogą być puste) jest tych symboli 32, czyli więcej niż zakres podany w pytaniu.
W ostatnim zdaniu wspominasz o zakresie A1 do AH31. Jak to należy interpretować? Każda kolumna oddzielnie czy też dotyczy to całego obszaru?
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Awatar użytkownika
Jermor
Posty: 2255
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Liczenie warunku

Post autor: Jermor »

Jednej uniwersalnej formuły nie wymyśliłem, ale znalazłem rozwiązanie z wykorzystaniem roboczej kolumny, którą w ostatecznej postaci można ukryć.
Ponieważ tak naprawdę nie znam całościowego opisu zagadnienia i nie wiem, czy poszukiwane mają być tylko jedynki, to – trzech kolumn. Pierwsza służy do odnalezienia sześciu jedynek, druga – dwójek a trzecia – trójek.

W kolumnach pomocniczych pierwsza formuła pojawia się dopiero w szóstym ich wierszu. Formuła oblicza sumę pięciu wyrażeń logicznych porównujących sąsiadujące ze sobą komórki w sześciokomórkowym obszarze. Pierwszą z drugą, drugą z trzecią, trzecią z czwartą, czwartą z piątą i piątą z szóstą. Jeśli ich porównanie jest prawdą, czyli w obu porównywanych komórkach jest ta sama wartość, wynikiem logicznym jest PRAWDA, co w znaczeniu arytmetycznym oznacza 1.
Jeśli we wszystkich komórkach jest taka sama wartość, to arytmetyczna suma tego obszaru wynosi 5. Liczba całkowita z ilorazu tej sumy i liczby 5 obliczy 1 tylko wówczas gdy sześć kolejnych wartości jest takich samych. Ta obliczona jedynka pojawi się zawsze przy szóstej komórce. Jednak taka formuła obliczy i wstawi wartość 1 przy każdym znalezionym ciągu sześciu kolejnych wartości. Aby policzyć ciągi jedynek, obliczona wartość jest mnożona przez wynik badania czy szósta komórka obszaru to 1. Jeśli tak to wynik wynosi PRAWDA i oznacza, że ciąg składa się z jedynek a dotychczasowa część formuły pomnożona przez PRAWDA (czyli arytmetyczną jedynkę) nie zmieni obliczenia. W sąsiednich dwóch kolumnach analogiczne obliczenia przebiegają dla wartości 2 i 3.
Ostatecznie wystarczy zsumować jedynki w poszczególnych kolumnach, aby wiedzieć, ile razy wystąpiły w obszarze danych takie same wartości sześć razy po kolei.
Należy zdawać sobie sprawę z tego, że formuła, szukając sześciu kolejno po sobie następujących takich samych wartości, zareaguje na zestaw np. ośmiu takich wartości następująco: Pierwsza szóstka to będą komórki od pierwszej do szóstej, druga szóstka – od drugiej do siódmej i ostatnia szóstka – od trzeciej do ósmej.
W załączeniu przykład.
Załączniki
lj.ods
(11.47 KiB) Pobrany 153 razy
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Liczenie warunku

Post autor: belstar »

Jarmor, ja też szedłem w podobną stronę z rozwiązaniem, tylko chciałem to załatwić blokowo (tablica), w załączniku w arkuszu skopiowanym z twojego przykładu wstawiłem to rozwiązanie. Lecz później postanowiłem podejść do tego inaczej. Oto moje założenia:
1. Wyeliminować komórki pomocnicze
2. Rozwiązać problem z powtarzającymi się wynikami w przypadku występujących po sobie cyfr, o którym wspominasz w swoim poście.

Drugi punkt udało się zrealizować całości, lecz z pierwszym nie wyszło tak jak bym chciał, formuła po sklejeniu wszystkiego do kupy zwraca błędny wynik i już sam nie wiem od czego to zależy (może ktoś mądrzejszy wytłumaczy mi to).

Do autora tematu:
Mam nadzieję że te rozwiązania spełniają twoje oczekiwania.
Załączniki
Ilość_Grup_Cyfr.ods
(30.63 KiB) Pobrany 168 razy
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Krzycho.K
Posty: 4
Rejestracja: wt sie 22, 2017 9:36 am

Re: Liczenie warunku

Post autor: Krzycho.K »

Belstar dziękuję za pomoc ...twój "patent" działa (wysłałem PW).
Oczywiście za wkład i szczerą chęć pomocy baaaaardzo dziękuję wszystkim :super:
pozdrawiam
Krzysiek
OpenOffice 4.1.2
ODPOWIEDZ