Excel 现已支持在单个单元格中存放多个值

Excel 现已支持在单个单元格中存放多个值

Hacker News 摘要

原标题:Excel now supports multiple values in a single cell

微软宣布在 Excel 中推出“单元格内列表”与“数组”功能,打破了 Excel 40 年来每个单元格只能存放一个值的限制。该功能目前已面向 Windows 和 Mac 的 Beta 渠道用户推出。

单元格内列表(Lists)

列表功能允许用户在单个单元格中存储多个独立的值。

• 创建与编辑:用户可以通过点击“插入”>“列表”或使用快捷键 Ctrl+J 创建列表,然后输入或粘贴以逗号、分号分隔的内容。双击单元格或按 F2 即可添加、删除或编辑列表项。点击单元格内的图标可以查看各个独立的值。

• 独立筛选:与传统的整串文本筛选不同,列表支持针对其中的单个或多个独立项目进行筛选。

• 公式引用:引用列表单元格(例如 =B2)时,系统会自动将列表中的所有值溢出展开到多个单元格中参与计算。

单元格内数组(Arrays in cells)与嵌套数组(Nested arrays)

数组现在可以作为原生值或公式计算结果直接保存在单个单元格中,支持任意大小和形状,甚至可以包含其他数组。

• 阻止溢出:以往动态数组公式会自动向外溢出。现在,只需用大括号 { } 包裹公式内容,即可将数组约束在单个单元格内(例如将 ={1;2;3} 改为 ={{1;2;3}})。

• 嵌套数组支持:Excel 现已支持数组内部嵌套数组(如 ={{1,2,3};{4,5,6}})。过去返回数组的数组会导致截断或出现 #CALC! 错误,现在公式(如针对多行处理的 TEXTSPLIT)能够完整返回嵌套结果并按需展开。

新增的四个函数

为了配合数组的高效处理,Excel 引入了四个全新函数:

• FLATTEN(array, [pad_value], [levels]):用于消除嵌套数组的一层或多层嵌套结构,将结果展平并溢出到网格中。如果各行元素数量不一致,可以使用 pad_value 参数(如空文本 "")填充空白区域。

• HAS(array, value):检查数组中是否包含某个特定值,包含则返回 TRUE,否则返回 FALSE。

• HASANY(array, values):检查给定的多个值中是否有任意一个存在于数组中,存在则返回 TRUE,否则返回 FALSE。

• HASALL(array, values):检查给定的所有值是否全部存在于数组中,全部存在则返回 TRUE,否则返回 FALSE。

兼容性设置

大部分涉及嵌套数组的计算需要“兼容性版本 3”支持。用户可以在“公式”>“计算选项”中为工作簿设置兼容性版本。由于部分旧公式在兼容性版本 3 下可能会返回不同的计算结果,如果工作簿表现异常,可以将其保持在兼容性版本 1 或 2。

当前已知限制

在当前的 Beta 测试阶段,该功能存在以下限制:

• 条件格式无法直接检查数组内容,除非通过公式实现。

• 数据验证无法将列表或数组作为下拉菜单项。

• 图表无法自动将数组展开为数据点。

• 数据透视表无法将数组值作为数据源读取。

• Power Query 暂不支持加载或输出包含数组的列。

• 查找和替换功能无法直接替换列表或数组内的单独项目。

支持版本与反馈

该功能目前向以下版本的 Beta 渠道用户推送:

• Windows:版本 2610(内部版本 20520.20000)或更高版本。

• Mac:版本 16.114(内部版本 26092111)或更高版本。

由于功能仍处于预览测试阶段,其具体行为可能会根据反馈发生调整,官方建议暂时不要在重要的正式工作簿中使用。用户可以通过 Excel 中的“帮助”>“反馈”提交使用意见。


原文:https://techcommunity.microsoft.com/blog/microsoft365insiderblog/put-multiple-values-in-one-cell-with-lists-and-arrays-in-excel/4559395

评论:https://news.ycombinator.com/item?id=49849832

Report Page