Excel选择性粘贴除法修改含数组关联公式单元格报错咨询
Excel选择性粘贴除法提示"cannot change part of an array"的原因及解决办法
问题原因
你用到的OFFSET是Excel的易失性数组函数,它返回的是一个数组区域——哪怕外层套了SUM把结果汇总成单个值,Excel仍然会把这个单元格标记为依赖数组计算的单元格。当你尝试用选择性粘贴-除法批量修改整行时,Excel会判定你在修改关联数组的部分内容,因此弹出这个错误提示。
实用解决方法
- 先转数值再运算:选中目标行,按
Ctrl+C复制,右键选择「选择性粘贴」→「数值」,把公式结果转为纯数值,之后再用100万做选择性粘贴除法就不会有问题。 - 直接修改原公式:选中整行的公式单元格,编辑第一个单元格的公式,在末尾加上
/1000000(比如改成=SUM(OFFSET(INDIRECT("sheet1!E"&$C27&":F"&$C27),0,I$6-$H$6))/1000000),然后按Ctrl+Enter,就能把修改批量应用到整行所有单元格。 - 用辅助行过渡:在目标行旁边插入一行,第一个单元格输入
=目标单元格地址/1000000,右拉填充整行后,把辅助行的内容复制,选择性粘贴为数值替换原行即可。
内容的提问来源于stack exchange,提问作者Jason Qian
相关产品推荐
相关产品推荐

