如何在 Excel 中组合、重塑和调整数组大小
在 Microsoft Excel 中处理数组或相邻的单元格区域有时会充满挑战。如果您想组合、重塑数组或调整数组大小,您可以从涵盖多种情况的函数集合中进行选择。
合并数组
在电子表格中组合数据可能很困难。使用 VSTACK 和 HSTACK 函数,您可以垂直和水平堆叠数组。
每个函数的语法与 VSTACK(array1, array2,...)
和 HSTACK(array1, array2,...)
相同,只有一个必需的数组和其他可选。
要垂直组合单元格 B2 到 F3 和 H2 到 L3 中的数组,请对 VSTACK 函数使用以下公式:
=VSTACK(B2:F3,H2:L3)
要水平组合这些相同的数组,请将此公式用于 HSTACK 函数:
=HSTACK(B2:F3,H2:L3)
重塑数组
如果您想要的不是组合数组而是重塑它们,则可以使用四个函数。
将数组转换为行或列
首先,TOROW 和 TOCOL 函数可让您将数组整形为一行或一列。每个的语法是 TOROW(array, ignore, by_column)
和 TOCOL(array, ignore, by_column)
。
- 忽略:要忽略某些类型的数据,输入 1 表示空白,2 表示错误,或 3 表示空白和错误。默认值为 0 以忽略任何值。
- By_column:使用此参数使用 TRUE 按列扫描数组。如果不包含任何参数,则默认为 FALSE,即按行扫描数组。这决定了值的排序方式。
要将数组 B2 到 F3 转换为一行,请将此公式与 TOROW 函数结合使用:
=TOROW(B2:F3)
要将同一数组转换为列,请将 TOCOL 函数与以下公式一起使用:
=TOCOL(B2:F3)
将行或列转换为数组
要执行与上述相反的操作并将行或列转换为数组,您可以使用 WRAPROWS 和 WRAPCOLS。每个的语法是 WRAPROWS(reference, wrap_count, pad)
和 WRAPCOLS(reference, wrap_count, pad)
其中 reference
是一组细胞。
- Wrap_count:每行或每列的值数。
- Pad:为 pad(空单元格)显示的值。
要通过换行将单元格 B2 到 K2 转换为二维数组,请使用 WRAPROWS 函数。使用此公式,单元格使用每行三个值进行包装,“空”作为 pad
。
=WRAPROWS(B2:K2,3,"empty")
要通过换行将相同的单元格转换为二维数组,请使用 WRAPCOLS 函数。使用此公式,单元格使用每列三个值进行换行,pad
为“empty”。
=WRAPCOLS(B2:K2,3,"empty")
调整数组大小
也许您想通过添加一些数据或删除不必要的单元格来调整数组的大小。根据您想要的结果,有五个功能可以帮助您做到这一点。
获取或删除行或列
使用 TAKE 函数,您可以保留指定的行数或列数。使用 DROP 函数,您可以执行相反的操作并删除您指定的行数或列数。您将使用正数从数组的开头获取或删除,使用负数从末尾获取或删除。
每个的语法是 TAKE(array, rows, columns)
和 DROP(array, rows, columns)
,您至少需要后两个参数之一; 行
或列
。
要保留数组 B2 到 F5 中的前两行,请将 TAKE 与 rows
参数一起使用。这是公式:
=TAKE(B2:F5,2)
要将前两列保留在同一个数组中,请改用 columns
参数:
=TAKE(B2:F5,,2)
要删除数组 B2 到 F5 中的前两行,请使用带有 rows
参数的 DROP 和此公式:
=DROP(B2:F5,2)
要删除同一数组中的前两列,请改用 columns
参数和此公式:
=DROP(B2:F5,,2)
保留一定数量的行或列
要从数组中选择要保留的确切行号和列号,可以使用 CHOOSEROWS 和 CHOOSECOLS 函数。
每个的语法是 CHOOSEROWS(array, row_num1, row_num2,...)
和 CHOOSECOLS(array, column_num1, column_num2,...)
其中前两个参数是必需的。如果愿意,您可以添加更多行号和列号。
要从数组 B2 到 F5 返回第 2 行和第 4 行,您需要使用 CHOOSEROWS 函数和以下公式:
=CHOOSEROWS(B2:F5,2,4)
要从同一个数组返回第 3 列和第 5 列,您需要使用带有以下公式的 CHOOSECOLS 函数:
=CHOOSECOLS(B2:F5,3,5)
将数组扩展到特定维度
也许您打算向数组中添加更多数据,因此您希望将其设置为特定大小以添加边框或使用条件格式。使用 EXPAND 函数,您可以输入数组应包含的行数和列数。
该函数的语法是 EXPAND(array, rows, columns, pad)
,其中缺少 rows
或 columns
参数意味着它们不会扩展。或者,您可以为空单元格包含 pad
值。
要将数组 B2 到 F5 扩展到 10 行和 10 列,您可以使用以下公式:
=EXPAND(B2:F5,10,10)
要将同一数组扩展到相同的维度并包含 pad
“空”,请使用以下公式:
=EXPAND(B2:F5,10,10,"empty")
这 11 个函数使您能够比以往更多地控制 Microsoft Excel 中的数组。试试看他们是否能满足您的需求。