Excel 定义了共享公式和数组公式。有什么不同?我的理解是数组公式现在已经过时了。这是真的?是否可以将数组公式转换为共享公式?
2 回答
查看 OpenOffice 的 Microsoft Excel 文件格式 (PDF ref) 的第4.8节:
数组公式 (BIFF2-BIFF8) 和共享公式 (BIFF5-BIFF8) 是跨单元格区域的公式。数组公式的处理方式与电子表格中的单个单元格公式不同。共享公式只是减少文件大小的优化,它们与其他单元格公式没有区别。自然,数组公式不能同时是共享公式。例如,在从单个公式单元格填充单元格区域时会创建共享公式。
通常,数组或共享公式在文件中只存储一次,数组公式在 ARRAY 记录 (➜5.4) 中,共享公式在 SHAREDFMLA 记录 (➜5.94) 中。这些记录是公式单元格块 (➜4.7.2) 的一部分。他们立即遵循该范围20的第一个 FORMULA 记录 (➜5.50) 。所有数组或共享公式单元格都包含对公式数据的引用。此引用(tExp 标记,➜3.10.1)包含范围左上角单元格的单元格地址。这样,每个公式单元格都可以与其公式数据相关联。
如果公式返回字符串值,则 STRING 记录 (➜5.102) 通常跟在 FORMULA 记录之后。对于数组和共享公式,此 STRING 记录在 ARRAY 或 SHAREDFMLA 记录之后。
20对于共享公式,第一个 FORMULA 记录可能不是范围的左上角单元格。可以覆盖共享公式范围的单个单元格,而不会使共享公式本身(剩余的公式单元格)无效。
共享公式只是一种更有效的存储公式的方法。
数组公式增加了重要的功能,绝对不会过时。例如,MMULT 函数可以返回多个值。要将这些多个值放入多个单元格中,您必须使用数组公式。通过选择区域,键入公式,然后按 CTRL+SHIFT+ENTER,可以将数组公式输入到单元格区域中。