Możesz całkowicie uniknąć funkcji autouzupełniania dzięki formułom tablicowym. Wystarczy wpisać formułę jak zwykle, ale dodać :column
na końcu każdego odwołania do komórki, a następnie wcisnąć Ctrl+Shift+Enter. Formuła zostanie wtedy natychmiast zastosowana do wszystkich komórek w kolumnie bez przeciągania czegokolwiek
Edycja:
Nowsze wersje Excela będą automatycznie używać formuł tablicowych do wypełniania w dół, gdy pojawi się nowy wiersz danych
Począwszy od aktualizacji z września 2018 r. dla Office 365, każda formuła, która może zwrócić wiele wyników, automatycznie rozleje je albo w dół, albo w poprzek do sąsiednich komórek. Tej zmianie zachowania towarzyszy również kilka nowych funkcji tablic dynamicznych. Dynamiczne formuły tablicowe, niezależnie od tego, czy korzystają z istniejących funkcji, czy z dynamicznych funkcji tablicowych, wymagają jedynie wprowadzenia do pojedynczej komórki, a następnie zatwierdzenia klawiszem Enter. Wcześniejsze, starsze formuły tablicowe wymagały najpierw zaznaczenia całego zakresu wyjściowego, a następnie zatwierdzenia formuły klawiszami Ctrl+Shift+Enter. Są one powszechnie nazywane formułami CSE.
Wskazówki i przykłady formuł tablicowych
Jeśli korzystasz ze starszej wersji Excela lub chcesz dowiedzieć się więcej o formułach tablicowych, czytaj dalej
Na przykład umieszczenie =B3:B + 2*C3:C
w D3 i Ctrl+Shift+Enter jest równoważne wpisaniu =B3 + 2*C3
i przeciągnięciu w dół w tabeli, zaczynając od wiersza 3
To szybkie do wpisania, ale ma tę wadę, że nieużywane komórki na końcu (poza bieżącą tabelą) są nadal obliczane i pokazują 0. Istnieje prosty sposób, aby ukryć te 0 . Jednak jeszcze lepszym sposobem jest ograniczenie obliczeń do ostatniej kolumny tabeli. Wiedząc, że w formule tablicowej można użyć X3:X101
, aby zastosować ją tylko do komórek od X3 do X101, możemy użyć funkcji INDIRECT
, aby osiągnąć ten sam efekt
- Wpisz
=LOOKUP(2, 1/(A:A <> ""), A:A)
w jakiejś komórce poza tabelą, aby znaleźć ostatnią niepustą komórkę w tabeli i nazwać ją LastRow
. Ewentualnie użyj =COUNTA(A3:A) + 2
, gdy pierwszy wiersz tabeli ma wartość 3
- Wtedy zamiast
B3:B
użyj =INDIRECT("B3:B" & LastRow)
Na przykład, jeśli chcesz, aby komórki w kolumnie D zawierały iloczyny komórek B i C, a kolumna E zawierała sumy B i C, zamiast używać D3 = B3*C3
i E3 = B3 + C3
i przeciągać je w dół, wystarczy umieścić poniższe formuły odpowiednio w D3 i E3 i nacisnąć Ctrl+Shift+Enter
=INDIRECT("B3:B" & LastRow) * INDIRECT("C3:C" & LastRow)
=INDIRECT("B3:B" & LastRow) + INDIRECT("C3:C" & LastRow)
Od tej pory za każdym razem, gdy dodasz dane do nowego wiersza, tabela zostanie automatycznie zaktualizowana
Formuła tablicowa jest bardzo szybka, ponieważ schemat dostępu do danych jest już znany. Teraz zamiast wykonywać 100001 różnych obliczeń osobno, można je zwektoryzować i wykonać równolegle , wykorzystując wiele rdzeni i jednostki SIMD w procesorze. Ma to również następujące zalety:
- Skonsekwencja: Jeśli klikniesz dowolną komórkę od E2 w dół, zobaczysz tę samą formułę. Ta spójność może pomóc w zapewnieniu większej dokładności.
- Bezpieczeństwo: Nie można nadpisać składnika formuły macierzy wielokomórkowej. Na przykład kliknij komórkę E3 i naciśnij klawisz Delete. Trzeba albo wybrać cały zakres komórek (od E2 do E11) i zmienić formułę dla całej tablicy, albo pozostawić tablicę w niezmienionej postaci. Jako dodatkowe zabezpieczenie, musisz nacisnąć Ctrl+Shift+Enter, aby potwierdzić zmianę formuły.
- Mniejsze rozmiary plików: Często można użyć pojedynczej formuły tablicowej zamiast kilku formuł pośrednich. Na przykład w tym skoroszycie użyto jednej formuły tablicowej do obliczenia wyników w kolumnie E. Gdybyś użył standardowych formuł (takich jak
=C2*D2
, C3*D3
, C4*D4
…), do obliczenia tych samych wyników użyłbyś 11 różnych formuł.
Wskazówki i przykłady formuł tablicowych
Aby uzyskać więcej informacji, przeczytaj