Dodanie warunku dla dzielenia wartości

Użytkowanie arkusza kalkulacyjnego
ssupkowski
Posty: 5
Rejestracja: pt sty 29, 2021 1:11 am

Dodanie warunku dla dzielenia wartości

Post autor: ssupkowski »

Dobry wieczór,
popełniłem kalkulator wspierający w ustawieniach danych dla jednej z gier internetowych.
Wybieramy z listy wartość tekstową, i odpowiednia wartość liczbowa jest dodawana/odejmowana od wartości z poprzedniego wiersza.
Chciałem się dowiedzieć czy jest możliwe takie zmodyfikowanie formuły, by w przypadku wybrania kolejny raz tego samego komentarza, jego wartość była dzielona przez ilość wystąpień. Inaczej, wartości liczbowe będą się powtarzać.
wings.JPG
Czyli jeśli komentarz 'The car could have a bit more speed in the straights' pojawił się drugi raz, to zamiast odejmować ponownie 64, należało by odjąć 32. A jeśli pojawi się trzeci raz (co nie powinno mieć miejsca) to odejmowaneby było 16 (połowa z 32).

Będę wdzięczny za pomoc.
Załączniki
gproKalkulator.ods
(18.23 KiB) Pobrany 150 razy
LibreOffice 7.0.4 na Windows 7
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jan_J »

Zamiast odejmować (czy dodawać, bo w cenniku masz wartości ujemne) wielkość z tabeli, podziel ją przez liczbę zależną od wystąpień danego tekstu w kolumnie nad nim. Konkretnie przez 2^(liczba wystąpień). Funkcja licz.jeżeli (countif) jest w stanie wykonać takie zliczenie.

= (poprzednia wartość) + (wartość z cennika) / 2^(licz.jeżeli(obszar powyżej; bieżący komunikat))

(obszar powyżej) powinien być opisany tak, by automatycznie się wydłużał wraz z propagacją formuły w dół. Czyli w komórkach B, C wiersza 3 powinien mieć postać D$2:D2 – adres mieszany, którego górny koniec jest niezmienny, a dolny jest sytuowany o 1 wyżej od bieżącego wpisu.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ssupkowski
Posty: 5
Rejestracja: pt sty 29, 2021 1:11 am

Re: Dodanie warunku dla dzielenia wartości

Post autor: ssupkowski »

Wielkie dzięki. Zdaje się, że działa :)
LibreOffice 7.0.4 na Windows 7
ssupkowski
Posty: 5
Rejestracja: pt sty 29, 2021 1:11 am

Re: Dodanie warunku dla dzielenia wartości

Post autor: ssupkowski »

@Jan_J, jednak nie działa prawidłowo. Albo nie zrozumiałem propozycji rozwiązania.

Jeżeli nie ma wpisanego komentarza w danej linii, to dodaje wartość prawidłowo.
Ale jeśli dodam komentarz, to wartość w tej komórce się zmienia, a nie powinna.
Przed wybraniem komentarza
Obrazek

Po wybraniu komentarza
Obrazek
LibreOffice 7.0.4 na Windows 7
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jan_J »

Pokaż swoją formułę albo lepiej załącz przykładowy skoroszyt.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Awatar użytkownika
Jermor
Posty: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jermor »

Jan_J podał ci dobry sposób. Musiałeś coś zrobić nie tak.
Podsyłam ci przerobiony plik. W proponowanej przez @Jan_J formule dodałem wykorzystanie funkcji JEŻELI.BŁĄD() po to, by uniknąć wyników błędu #N/D.
Załączniki
gproKalkulator (1).ods
(16.83 KiB) Pobrany 144 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.
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jan_J »

Problemem mogą być puste rubryki w kolumnie komentarzy. Sądzę, że pusty komentarz należałoby traktować za każdem razem jako nowy.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ssupkowski
Posty: 5
Rejestracja: pt sty 29, 2021 1:11 am

Re: Dodanie warunku dla dzielenia wartości

Post autor: ssupkowski »

Przesyłam formularz z wprowadzoną formułą (zakładka Setup_2).
Załączniki
gproKalkulator.ods
(18.38 KiB) Pobrany 140 razy
LibreOffice 7.0.4 na Windows 7
Awatar użytkownika
Jermor
Posty: 2256
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jermor »

Ponieważ i ja i Jan_J odpowiadaliśmy na twój post, to teraz nie wiem czego dotyczy ten powyżej i do kogo jest skierowany.
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.
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dodanie warunku dla dzielenia wartości

Post autor: Jan_J »

Używasz formuły (w komórce C3)

Kod: Zaznacz cały

=C2+VLOOKUP(E2;$Dane.B$6:C$12;2;0)/2^(COUNTIF(E$2:E2;E3))
Komunikat będący podstawą wyszukiwania w cenniku znajduje się w komórce E2 — bo VLOOKUP(E2;$Dane.B$6:C$12;2;0).
Jednocześnie krotność wystąpienia komunikatu obliczasz dla E3 — bo COUNTIF(E$2:E2;E3).
To nie może działać dobrze.

Sugeruję

Kod: Zaznacz cały

=C2+VLOOKUP(E2;$Dane.B$6:C$12;2;0)/2^(COUNTIF(E$2:E2;E2)-1)
(-1) dlatego, że w obszarze podlegającym zliczaniu znajduje się także komórka, której wartość zliczasz.
Możesz także w wykładniku napisać COUNTIF(E$1:E1;E2) przy założeniu, że żaden sensowny komunikat nie brzmi tak, jak nagłówek w E1.
Mam nadzieję, że to wystarczy. Problem mogą sprawiać puste rubryki w kolumnie komunikatów, o ile reguły gry dopuszczają brak komunikatu. Przykład nie rozstrzyga, ale Twoje wyszukiwanie daje wtedy błąd.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ssupkowski
Posty: 5
Rejestracja: pt sty 29, 2021 1:11 am

Re: Dodanie warunku dla dzielenia wartości

Post autor: ssupkowski »

Wielkie dzięki.
Dodałem jednak formułę z -1,
Jan_J pisze:Możesz także w wykładniku napisać COUNTIF(E$1:E1;E2) przy założeniu, że żaden sensowny komunikat nie brzmi tak, jak nagłówek w E1.
od razu dodawało połowę wartości z Danych w komórce E3. I nie wiem czym to mogło być spowodowane gdyż słowa Komentarz czy nazwa elementu nie występują w wybieranych komentarzach (są przecież po angielsku).

Co do
Jan_J pisze:Problem mogą sprawiać puste rubryki w kolumnie komunikatów, o ile reguły gry dopuszczają brak komunikatu.
, zawsze jest jakiś komentarz (wartość Satisfied). I właśnie z tego powodu szukałem rozwinięcia formuły, bo właśnie ten komentarz może się powtarzać najczęściej i następowało zapętlenie wartości.
LibreOffice 7.0.4 na Windows 7
ODPOWIEDZ