微软 Excel 高级产品经理近日确认,这款拥有 40 年历史的电子表格软件将迎来自诞生以来最核心的功能变革:打破“每个单元格仅能存储一个值”的传统限制,正式引入单元格内数组(Arrays in Cells)及列表(Lists)功能。

单元格内列表与动态筛选
用户可通过选择“插入 > 列表”或按下 Ctrl+J 快捷键创建列表。输入或粘贴以逗号或分号分隔的项目后,点击单元格内的图标即可查看具体数值。
与传统文本不同,Excel 中的列表支持针对单个项目而非整体文本进行筛选。在公式引用时,列表会返回所有值用于计算。例如,公式 =B2 可将 B2 单元格中的列表值溢出(spill)至相邻的独立单元格中。
原生数组与嵌套结构
这是 Excel 首次允许数组作为值或公式结果原生存在于单元格中。这些数组可以具有任意大小和形状,甚至包含其他数组。通过用花括号 { } “包裹”公式主体,用户可以将原本溢出的公式结果保留在单个单元格内。
自动态数组推出以来,数组结果通常会跨单元格溢出,例如 ={1;2;3}。现在,通过在原始数组外再添加一层花括号,可创建一个 1x1 的包装数组,使其停留在单一单元格中而不发生溢出。这一机制扩展了花括号在 Excel 中描述数组的传统行为,并支持多层嵌套,为构建电子表格提供了更高的灵活性,无需再为公式溢出预留空间。
此外,数组现在支持“嵌套”,即数组内部包含其他数组。此前,产生数组套数组的公式往往返回截断的结果或 #CALC! 错误,而目前支持的公式能够返回完整的嵌套结果。新函数 FLATTEN(array, [pad_value], [levels]) 可用于简化嵌套数组,移除一层或多层嵌套结构。
新增 HAS 系列检查函数
Excel 引入了三个新的 HAS 函数,用于检查值是否存在于数组中:
HAS(array, value):如果指定值出现在数组中的任何位置,则返回 TRUE,否则返回 FALSE。HASANY(array, values):如果提供的多个值中有任何一个出现在数组中,则返回 TRUE,否则返回 FALSE。HASALL(array, values):如果提供的所有值均出现在数组中,则返回 TRUE,否则返回 FALSE。





