Excel - pobieranie danych zawsze z ostatniej komórki na liście

Cześć!

 

Tworzę swój bilans pieniędzy na moim koncie i chciałbym teraz zacząć porównywać ile pieniędzy przybyło mi od początku analizowania, oraz porównywać ze sobą dwie ostatnie wartości.

 

To wydaje się proste, ale ja stale dodaje nowe komórki przez co nie mogę sztywno zdefiniować: B35-B34 itp. Nie wiem w jaki sposób zmusić Excela aby stale aktualizował dwie ostatnie komórki w tabeli, albo aby pobierał pierwszą (ona oczywiście zawsze będzie już sztywna) oraz ostatnią (ta będzie coraz niżej).

 

Z góry wielkie dzięki za pomoc!

 

Może?

https://support.office.com/pl-pl/article/ILENIEPUSTYCH-funkcja-7dc98875-d5c1-46f1-9a82-53f3219e2509

Potem już odejmowanie indeksów

Hej,

Jeśli posługiwać się tylko formułami, to można na szybko zrobić coś takiego. W kolumnie C dodać formułę pomocniczą - załóżmy, że dla wiersza 34:

=JEŻELI(B35="";B34-B33;0)

Formuła ta będzie pokazywać różnicę tylko w jednej, ostatniej komórce, w poprzednich będzie zaś zwracać 0. Jeśli różnicę między ostatnimi operacjami chcesz mieć gdzieś u góry, wystarczy posłużyć się funkcją max().

Pozdrawiam,

Dimatheus

@Dimatheus ale Twoje rozwiązanie się nie sprwadzi. Bo jak dodam 36 komórkę to już podana przez Ciebie funkcja nie zadziała.

 

Niestety też nie wiem jak poradzić sobie z liczeniem niepustych elementów.

Hej,

Po prostu przeciągasz formuły w kolumnie C na przykład aż do komórki C5000. I po sprawie.

Pozdrawiam,

Dimatheus

No dobra. Ale wciąż nie mogę zmusić Excela by liczył: KONIEC-POCZĄTEK.

Ciężko coś podpowiedzieć, gdyż nie wiem w którą stronę chcesz iść. Ale może coś z tego ci pomoże:


 

Kolumna C :

=SUMA.JEŻELI($A:$A;"="$A2;$B:$B)

Kolumna D:

=JEŻELI(DZIEŃ($A2) =DZIEŃ(NR.SER.OST.DN.MIES($A2;0));$C2;"")

Kolumna E:

=INDEKS($B:$B;ILE.LICZB($B:$B)+1)-$B$2

Kolumna F:

=INDEKS($B:$B;ILE.LICZB($B:$B)+1)

Kolumna G:

=ILE.LICZB($B:$B)

Hej,

Najlepiej, gdybyś pokazał przykładowy plik łącznie z komórką, w której ma się znaleźć konkretne wyliczenie.

Pozdrawiam,

Dimatheus

OK.

 

Tutaj znajduje się przykładowy plik, w którym najlepiej jak to potrafię opisałem o co mi chodzi:

 

https://dl.dropboxusercontent.com/u/11015865/excel-pomoc.xlsx

Hej,

Najszybciej spełniając założenie posłużyć się dodatkową kolumną pomocniczą. Jej wartości znajdują się w kolumnie C, w której formuły są przeciągnięte do 1000 wiersza. Oczywiście w ramach potrzeby można przeciągnąć je jeszcze bardziej w dół. Formuła dla komórki C11 jest następująca:

=JEŻELI(ILE.NIEPUSTYCH(A10:A12)=2;"Ostatni";JEŻELI(ILE.NIEPUSTYCH(A10:A13)=3;"Przedostatni";""))

i zwraca wartości tekstowe “Ostatni” i “Przedostatni”, na podstawie których możemy zrobić przypisania do zliczania sum, korzytając z funkcji Suma.jeżeli. I tak pole zliczające sumę oszczędności będzie miało postać:

=SUMA.JEŻELI(C2:C1000;"Ostatni";A2:A1000)-A2

a pole zliczające przyrost między ostatnimi zapisami:

=SUMA.JEŻELI(C2:C1000;"Ostatni";A2:A1000)-SUMA.JEŻELI(C2:C1000;"Przedostatni";A2:A1000)

Pliczek pod linkiem: http://lightrock.pl/Pliki/excel-pomoc.xlsx

Pozdrawiam,

Dimatheus

“Odkąd zacząłem oszczędzać”:

=INDEKS($A:$A;ILE.LICZB($A:$A)+1)-$A$2

“Ostatni - przedostatni”:

=INDEKS($A:$A;ILE.LICZB($A:$A)+1)-INDEKS($A:$A;ILE.LICZB($A:$A))

Hej,

Zgadza się, można zrobić to też za pomocą indeksów. Aczkolwiek w tym konkretnym przypadku kotwice przy poszczególnych komórkach nie są potrzebne, bo formuły nie będą kopiowane dalej. Będzie więc odpowiednio:

=INDEKS(A:A;ILE.LICZB(A:A)+1)-A$2

oraz

=INDEKS(A:A;ILE.LICZB(A:A)+1)-INDEKS(A:A;ILE.LICZB(A:A))

Pozdrawiam,

Dimatheus

=INDEKS(A:A; ILE.NIEPUSTYCH(A:A);1)

Mega! Działa!

 

Naprawdę stukrotne dzięki wielkie!