我有一个工作表,其中包括从库存到另一个以及从供应商到另一个的产品交易,我从excel工作表到google工作表中导入了FIFO评估公式,但是当我将该公式填充到所有字段工作表时,速度非常慢。 在我的工作表链接下方。
这是公式之一
=ARRAY_CONSTRAIN(ARRAYFORMULA(SUM(--IF(MMULT(--(ROW(F$17:F18)>=TRANSPOSE(ROW(F$17:F18))),--IF(E$17:E18=N19,F$17:F18,0))<SUMIF(N$18:N19,N19,O$18:O19),1,0))), 1, 1)
和
=ARRAY_CONSTRAIN(ARRAYFORMULA(SUMPRODUCT(--IF(OFFSET(E$17,,,V19+1)=N19,1,0),OFFSET(F$17,,,V19+1),OFFSET(H$17,,,V19+1))-SUMIF(N$18:N18,N19,Z$18:Z18)), 1, 1)
和
=ARRAY_CONSTRAIN(ARRAYFORMULA((SUMIF(N$18:N19,N19,O$18:O19)-SUMPRODUCT(--IF(OFFSET(E$17,,,V19+1)=N19,1,0),OFFSET(F$17,,,V19+1)))*OFFSET(H$17,V19,,,)), 1, 1)
最后
=IF(SUMIF(N$18:N19,N19,O$18:O19)>SUM(E$18:E19,N19,F$18:F19),MAX(SUMIF(E$18:E19,N19,G$18:G19)-SUMIF(N$18:N18,N19,P$18:P18),0),Y19)
https://docs.google.com/spreadsheets/d/1xJxCipSh-Q5ltSaGo-kpEPomrZdAI1T8PDH57rc-sOw/edit?usp=sharing
更新。...
H列中的公式 = IF(F19 = 0,0,G19 / F19) 替换为 = ARRAYFORMULA(IF(LEN(F19:F),IF(F19:F = 0,0,G19:G / F19:F),))
P列中的公式 = Z19 替换为 = ARRAYFORMULA(IF(LEN(O19:O),IF(O19:O = 0,0,Z19:Z),))
公式在O列中 = P19 / O19 替换为 = ARRAYFORMULA(IF(LEN(O19:O),IF(O19:O = 0,0,P19:P / O19:O),))
但是那些公式仍然需要帮助
= ARRAY_CONSTRAIN(ARRAYFORMULA(SUM(-IF(MMULT(-(ROW(F $ 17:F18)>> = TRANSPOSE(ROW(F $ 17:F18)))),-IF(E $ 17:E18 = N19 ,F $ 17:F18,0))
= ARRAY_CONSTRAIN(ARRAYFORMULA(SUMPRODUCT(-IF(OFFSET(E $ 17 ,,, V19 + 1)= N19,1,0),OFFSET(F $ 17 ,,, V19 + 1),OFFSET (H $ 17 ,,, V19 + 1))-SUMIF(N $ 18:N18,N19,Z $ 18:Z18)),1,1)
= ARRAY_CONSTRAIN(ARRAYFORMULA((SUMIF(N $ 18:N19,N19,O $ 18:O19)-SUMPRODUCT(-IF(OFFSET(E $ 17 ,,, V19 + 1)= N19,1,0),OFFSET (F $ 17 ,,, V19 + 1)))* OFFSET(H $ 17,V19 ,,,)),1,1)
= IF(SUMIF(N $ 18:N19,N19,O $ 18:O19)> SUM(E $ 18:E19,N19,F $ 18:F19),MAX(SUMIF(E $ 18:E19,N19,G19,G $ 18: G19)-SUMIF(N $ 18:N18,N19,P $ 18:P18),0),Y19)
致谢
答案 0 :(得分:0)
工作表FIFO在第19行到第5395行的H列(可能还有其他列)上有一个很长的“公式链”。通过公式链,我指的是一个公式,其中包括向下/向右填充的相对引用因此下一个公式与下一个公式之间的A1表示法差异只是相对引用,而在R1C1表示法中,公式的外观相同。
要提高电子表格的性能,应减少公式的数量。如果不需要太多行,请尝试删除不必要的行。如果这还不够,或者您正在寻找最佳性能,请在可能的情况下用数组公式替换公式链,或者使用Google Apps脚本
注意
为了充分利用您的网络浏览器/设备/网络 资源