Suma komórek do czasu napotkania 1-szej pustej komórki

Użytkowanie arkusza kalkulacyjnego
squidypro
Posty: 2
Rejestracja: pn cze 12, 2017 1:19 pm

Suma komórek do czasu napotkania 1-szej pustej komórki

Post autor: squidypro »

Hey,
Mam problem z pewną formułą sumującą ciężar stali (screen oraz plik w załączniku), która będzie działała jak formuła dynamiczna (gdzie sie nie skopiuje to bedzie dobrze zliczać). Stworzono formułę dla H14 (MS exel):

Kod: Zaznacz cały

=SUMA(INDEKS(H$1:H13;WYSZUKAJ(2;1/(A$1:A13="");WIERSZ(A$1:A13))+1):H13)
która działa następująco:

Kod: Zaznacz cały

A$1:A13=""
tworzy tablicę FALSE/TRUE. Jeśli komórka jest pusta to w tablicy jest TRUE, w przeciwnym razie jest FALSE

Kod: Zaznacz cały

1/(A$1:A13="")
Tworzy tablicę 1/błąd (dzielenie przez zero)
Czyli jeśli komórka jest pusta to w tablicy jest 1 (1/TRUE = 1/1 = 1), w przeciwnym razie jest błąd (1/FALSE = 1/0 = błąd)

Ponieważ funkcja szuka 2 to na pewno nie znajdzie w tej tablicy.
WYSZUKAJ działa tak:
1. ignoruje wszystkie błędne wartości - błędy.
2. Jeśli nie znajdzie lookup_value to zwraca wartość odpowiadającą ostatniej wartości.
------------
W danej formule

Kod: Zaznacz cały

1/(A$1:A13="")
zwraca tablicę {#DIV/0!;#DIV/0!;1;#DIV/0!;#DIV/0!;1;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}
Funkcja nie znajdzie 2, więc zwraca wartość odpowiadającą ostatniej jedynce (na pozycji 6), czyli 6 (element 6 tablicy ROW(A$1:A13))
Wtedy

Kod: Zaznacz cały

INDEKS(H$1:H13;WYSZUKAJ(2;1/(A$1:A13="");WIERSZ(A$1:A13))+1)
=INDEKS(H$1:H13;6+1)
=INDEKS(H$1:H13;7)
=H7
(funkcja INDEKS zwraca referencję)
ostatecznie

Kod: Zaznacz cały

=SUMA(INDEKS(H$1:H13;WYSZUKAJ(2;1/(A$1:A13="");WIERSZ(A$1:A13))+1):H13)
=SUMA(H7:H13)
Jako lookup_value można podać dowolną wartość > 1. WYSZUKAJ wtedy też jej nie znajdzie i działa tak jak opisano.

Problem pojawia się w Libre calc, bo nie działa jak MS exel i wyskakuje błąd dla formuły Wyszukaj (creen w załaczniku) i nie działa jak opisano powyżej...
I pytanie w wziązku z tym, czy Libre calc inaczej trzeba tą formułę napisać, czy po prostu nie bedzie wstanie tego tak interpretować jak w MS exel
Załączniki
zestawienie_stali_testA.xls
(14.5 KiB) Pobrany 113 razy
Jak działa formuła
Jak działa formuła
porównanie MS office i Libre calc
porównanie MS office i Libre calc
LibreOffice 5.3.3 na Windows 7
squidypro
Posty: 2
Rejestracja: pn cze 12, 2017 1:19 pm

Re: Suma komórek do czasu napotkania 1-szej pustej komórki

Post autor: squidypro »

albo prościej, zwykły przykład bez miliona danych, chodzi o funkcje wyszukaj taką jak zaproponowałem.... czy ona w Libre calc nie jest wstanie działać tablicowo???
w załącznikach prosty przykład i porównanie z MS exel, gdzie rozpoznaje dana formułę:
Załączniki
przykład_wyszukaj.xlsx
(6.29 KiB) Pobrany 95 razy
wyszukaj_błąd.jpg
LibreOffice 5.3.3 na Windows 7
ODPOWIEDZ