Array

TAKE Formula

Returns a specified number of contiguous rows and/or columns from the start or end of an array. TAKE is like slicing the first N or last N rows of a table without using complex INDEX/OFFSET formulas. Positive numbers take from the start; negative numbers take from the end.

Syntax

TAKE(array, rows, [columns])
ParameterDescription
array Parameter of the TAKE function.
rows Parameter of the TAKE function.
[columns] (Optional.) Parameter of the TAKE function.
Try TAKE in Viztab — free, no signup

Examples

First 5 rows of a table

Formula
=TAKE(A1:D100, 5)
Returns rows 1-5 of the 4-column table. All columns are included.

Last 3 rows

Formula
=TAKE(A1:D100, -3)
Returns the last 3 rows of the table. Negative row count counts from the bottom.

Top-left corner: first 3 rows, first 2 columns

Formula
=TAKE(A1:F50, 3, 2)
Returns a 3x2 block from the top-left of the array. Use both arguments to slice in both dimensions.

Common Errors

#VALUE!

The rows or columns argument is zero (you must take at least 1 row or column, or use a negative number).

#CALC!

The absolute value of rows or columns exceeds the array dimensions.

Tips

Negative values take from the end

TAKE(data, -5) gets the last 5 rows. This is perfect for showing the most recent entries in a log or transaction list.

Combine with SORT for top N

=TAKE(SORT(A1:B100, 2, -1), 10) sorts by column 2 descending, then takes the top 10 rows — a leaderboard in one formula.

TAKE vs DROP

TAKE keeps the specified rows/columns; DROP removes them. They're complementary: TAKE(data, 3) and DROP(data, -N+3) give the same result if the math works out.

Try TAKE in Viztab

Import your data and use TAKE with 370+ other formulas. No signup required.

Open Viztab

Related Formulas