目前,我有一个公式可以帮助我根据两个下拉列表计算平均值。我管理它,以便即使任何一个下拉列表都是空的,也可以计算平均值。
当前双下拉安排的屏幕截图:
我现在想做同样的事情,但这次有一个平均功能,可以使用3个下拉列表:我希望它返回选择下拉单元格中1,2或3时对应的值。
我在编写公式时会以某种方式迷路并返回错误。我觉得我没有考虑所有可能性。
你可以帮帮我吗?谢谢:)
答案 0 :(得分:1)
假设您想要添加图片中的名称标准,我想出了以下公式。它很长,可能有一种更清洁的方式,但似乎有效。
`=IFERROR(IF(AND(A5<>"",B5="",C5=""),AVERAGEIF(Name,A5,Number),
IF(AND(A5="",B5<>"",C5=""),AVERAGEIF(size,B5,Number),
IF(AND(A5="",B5="",C5<>""),AVERAGEIF(color,C5,Number),
IF(AND(A5<>"",B5<>"",C5=""),AVERAGEIFS(Number,Name,A5,size,B5),
IF(AND(A5<>"",B5="",C5<>""),AVERAGEIFS(Number,Name,A5,color,C5),
IF(AND(A5="",B5<>"",C5<>""),AVERAGEIFS(Number,size,B5,color,C5),
AVERAGEIFS(Number,Name,A5,size,B5,color,C5))))))),
"No Combo")`
答案 1 :(得分:0)
当不匹配条件不产生任何结果时,您可以满足四个条件和错误控制。
- A5,B5和C5都可以有值。
- A5,B5和C5都没有值。
- 两个A5:C5细胞可以有值。
子>
- A5为空白
- B5是空白
- C5是空白
- 其中一个A5:C5细胞可以有值。
子>
- A5有一个值
- B5具有值
- C5具有值
- A5,B5和C5的任意组合(包括空白)都不会产生与D9:D14匹配的数字,导致AVERAGEIFS function出现
醇>#DIV/0!
错误。
D5中的标准公式是,
=IFERROR(IF(COUNTA(A5:C5)=3, AVERAGEIFS(D9:D14, A9:A14, A5, B9:B14, B5, C9:C14, C5),
IF(COUNTA(A5:C5)=0, AVERAGE(D9:D14),
IF(COUNTA(A5:C5)=2, IF(A5="", AVERAGEIFS(D9:D14, B9:B14, B5, C9:C14, C5),
IF(B5="", AVERAGEIFS(D9:D14, A9:A14, A5, C9:C14, C5),
AVERAGEIFS(D9:D14, A9:A14, A5, B9:B14, B5))),
IF(COUNTA(A5:C5)=1, IF(A5<>"", AVERAGEIFS(D9:D14, A9:A14, A5),
IF(B5<>"", AVERAGEIFS(D9:D14, B9:B14, B5),
AVERAGEIFS(D9:D14, C9:C14, C5))))))),
"nothing to avg")
您可以选择在公式中保留换行符和额外间距。在视觉上组织公式没有任何不利和帮助。
为简单起见,我只使用了AVERAGE和AVERAGEIFS函数。 AVERAGEIF函数只是一个只有一个条件的AVERAGEIFS但它的参数翻转以补偿 average_range 与 criteria_range <的范围不同的选项/ em>的。对于AVERAGEIFS,单独的 average_range 和 criteria_range 不是可选的。在涉及标准时仅使用AVERAGEIFS意味着您可以使用一种语法。
这比你原来的要复杂得多,只允许一个标准。随着更多标准的出现,出现更多DIV/0!
错误的可能性增加。要根据其他选择限制选择,请参阅Conditional Data Validation based on Dropdown List Response了解相关信息。