首页 > 解决方案 > 为什么 CELL("Width", A1) 用“FALSE”填充右侧的单元格?

问题描述

我希望检查不同工作表上每列的组合宽度,以使工作簿中所有工作表的总打印区域宽度匹配。当我进入=CELL("Width", A1)一个单元格时,我会得到以点为单位的宽度(四舍五入,但对于我正在做的事情来说已经足够好了),但它也会用“FALSE”填充右侧的下一个单元格。这很烦人,因为我希望能够简单地将公式拖到我要检查的所有列中,然后对它们求和。我知道如何解决这个问题,所以我可以垂直拖动它,但只是想知道是否有办法改变这种行为,所以我不必这样做?

另外-如果有人能告诉我第二个单元首先是做什么的,那么可以加分。

标签: excelexcel-formula

解决方案


文档在这里很有帮助:

“width”:返回一个包含 2 个项目的数组。

数组中的第一项是单元格的列宽,四舍五入为整数。每个列宽单位等于默认字体大小中一个字符的宽度。

数组中的第二项是布尔值,如果列宽是默认值,则值为 TRUE,如果用户已明确设置宽度,则值为 FALSE。

如果您只想要数组中的第一项,则可以使用 INDEX:

=INDEX(CELL("width",A1),1)

如果“辅助单元格”是指右侧带有 FALSE 的单元格,您将看到 Excel 的新溢出功能

返回多个值的 Excel 公式(也称为数组)将结果返回到相邻单元格。这种行为称为溢出

根据您的 Excel 版本,您将看到 CELL 的完整数组结果。

编辑: 更好的方法是使用隐式交集运算符 @返回数组的第一个值:

=@CELL("width",A1)

推荐阅读