Excel产品和行函数错误
我一直有个名字?此函数出现错误:Excel产品和行函数错误,excel,function,Excel,Function,我一直有个名字?此函数出现错误: =1/A5*SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24)))) (EulerPhi是一个用户定义的函数,它执行Euler的ToClient函数) 有人知道这是什么原因吗?或者,有没有更好的方法从i=1-24中总结出这一点 =1/A5*SUMPRODUCT((
=1/A5*SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24))))
(EulerPhi是一个用户定义的函数,它执行Euler的ToClient函数)
有人知道这是什么原因吗?或者,有没有更好的方法从i=1-24中总结出这一点
=1/A5*SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/i),1)=GCD(A5,B4)/i,1,0)*EulerPhi(i)*COMBIN(A5/i,B4/i)))
谢谢你的帮助 您的问题“可能导致此问题的原因”的正确答案是:缺少故障排除
问为什么一个公式不起作用,而不共享它所查看的数据或自定义函数的代码,就像我打电话给你说“那东西是什么颜色的?”。。。你不会知道我在问什么(即使你知道什么是颜色)
故障排除
您的问题标题表示问题是[SUMPRODUCT]或[ROW]。我只能假设这些术语是随机选择的,因为:
- 你没有说明你为什么特别怀疑这些功能
- 解释为什么这些函数比公式中的其他函数(如[ROW]、[COMBIN]甚至自定义函数[EulerPhi]更具问题性
- 发帖几分钟后,您就再也没有回过头来回答有关您帖子的问题
A5的值
-B5的值
-行的内容(1:24)
-自定义函数背后的代码EulerPhi
。但我几乎可以保证这归结为:
1.自定义函数EulerPhi
,以及
2.引用范围行(1:24)的意外影响
您可以通过检查此公式是否正确计算来确认我的理论:
=EulerPhi(ROW(1:24))
如果这恰好起到了应有的作用,则将以下15个forumlas复制并粘贴到数据所在的同一工作表的空白区域。您的问题在于您遇到的错误:
=1/A5*SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24))))
=A5*SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24))))
=SUMPRODUCT((IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24))))
=(IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24)))
=IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)*EulerPhi(ROW(1:24))*COMBIN(A5/ROW(1:24),B4/ROW(1:24))
=IF(FLOOR((GCD(A5,B4)/ROW(1:24)),1)=GCD(A5,B4)/ROW(1:24),1,0)
=FLOOR((GCD(A5,B4)/ROW(1:24)),1)
=GCD(A5,B4)/ROW(1:24)
=GCD(A5,B4)
=EulerPhi(ROW(1:24))
=COMBIN(A5/ROW(1:24),B4/ROW(1:24))
=A5
=B4/ROW(1:24)
=B4
=ROW(1:24)
(公式只是图像的副本,重复项已删除。)
至此,您将解决问题,或者至少有一个特定问题要问。请阅读此处需要包含哪些示例信息的提示:
正确的故障排除方法似乎很耗时,但通过实践,排除过程会变得更快,从长远来看,这将节省大量时间和挫折感(对自己和他人而言)。EulerPHI位于何处?它必须位于附加到要从中调用它的工作簿的模块中,或者需要包含工作簿名称。在使用本工作簿时,我将其放在visual basic模块中。这个函数只是一个建议,但似乎没有超出这个范围。visual basic模块的名称是什么?如果模块的名称与函数的名称相同,则会出现该错误。您可以重命名函数、模块或将其完全限定为EulerPhi.EulerPhi(行(1:24))
这应该是一个数组函数吗?为什么“ROW(1:24)”是这样使用的?@BrynnBran(别忘了✓ 接受一个有助于解决问题的答案…你将获得+2
声誉,而答案的作者将获得+15
代表。一旦你获得15个声誉,你也可以▲ 向上投票
任何有帮助的答案,这也会奖励作者并使堆栈溢出社区整体受益!)