Możesz to zrobić za pomocą INDIRECT
i OFFSET
funkcji.
Aby dać przykład, załóżmy, że masz tylko jedną kolumnę pięciu punktów danych, przy czym pierwszy wiersz to nagłówek, a drugi wiersz to dane. Teraz chcesz podsumować kolumnę.
|| A
==||======
1 || Sale
2 || 1
3 || 2
4 || 3
5 || 4
6 || 5
i chcesz zawsze SUM
od pierwszej wartości do ostatniej. W przypadku ustalonego zestawu, takiego jak pokazany powyżej, możesz po prostu zrobić =SUM(A2:A6)
w A7
komórce.
Ale chcesz móc dodawać wiersze na górze. Oczekuje się, że funkcja będzie mogła sumować od pierwszego wiersza danych do ostatniego wiersza danych tuż przed użyciem formuły. Używałbyś więc INDIRECT("A2")
jako indeksu początkowego (A2 nie zmienia się nawet po dodaniu nowego wiersza) i OFFSET(A7, -1, 0, 1, 1)
jako ostatniego indeksu (A7 zmieni się na A8, jeśli dodany zostanie nowy wiersz, a przesunięcie zapewni, że „ wciąż sumują, aż jedna komórka powyżej A8).
=SUM(INDIRECT("A2"):OFFSET(A7,-1,0,1,1))
Teraz, nawet jeśli dodasz nowy wiersz u góry, Twoja formuła będzie działać dobrze.
Mam nadzieję, że to pomoże.