如何为已使用TRANSPOSE转置的单元格添加其他公式
公式嵌套实现方案
你当前使用的TRANSPOSE(SPLIT(IPHONES!B82,"/"))返回的是拆分转置后的一维数组,要对数组内每一个元素执行「数值大于100则加5」的逻辑,直接嵌套数组适配类公式即可,不需要单独对溢出单元格新增公式。
不同环境适用公式
Google Sheets
直接用ARRAYFORMULA包裹逻辑即可自动适配数组内的所有元素:
=ARRAYFORMULA( LET( arr, --TRANSPOSE(SPLIT(IPHONES!B82,"/")), IFERROR(IF(arr>100, arr+5, arr), arr) ) )
公式说明:
--作用是把SPLIT返回的文本格式数值转为数字类型,避免判断逻辑失效LET函数可以把重复调用的拆分转置结果定义为变量arr,简化公式结构,不支持LET的版本可以直接把arr替换为--TRANSPOSE(SPLIT(IPHONES!B82,"/"))- 外层
IFERROR用于处理拆分后存在非数值内容的场景,遇到异常值会直接返回原内容,不会抛出错误
Excel 365/2021(支持动态数组版本)
Excel动态数组环境不需要额外加ARRAYFORMULA,公式写完直接回车即可自动溢出匹配所有结果:
=LET( arr, --TRANSPOSE(SPLIT(IPHONES!B82,"/")), IFERROR(IF(arr>100, arr+5, arr), arr) )
如果是不支持LET的旧版本Excel,直接展开逻辑即可:
=IFERROR(IF(--TRANSPOSE(SPLIT(IPHONES!B82,"/"))>100, --TRANSPOSE(SPLIT(IPHONES!B82,"/"))+5, --TRANSPOSE(SPLIT(IPHONES!B82,"/"))), TRANSPOSE(SPLIT(IPHONES!B82,"/")))
内容的提问来源于stack exchange,提问作者Wiil Waal
相关产品推荐
相关产品推荐

