【发布时间】:2015-10-28 06:09:30
【问题描述】:
我有一张有两列的表
ID Probability
A 1%
B 2%
C 3%
D 4%
我有另一个表,有一些 ID 和相应的权重:
ID Weight
A 50%
D 25%
A 15%
B 5%
B 5%
我正在寻找的是一种方法,在单个公式中,使用第一个表中的数据找到第二个表中每个 ID 的相应概率,然后将每个 ID 乘以第二个表中它们各自的权重,然后对结果求和。
我认识到解决它的一个简单方法是在第二个表中添加一个代理列,并使用 vlookup 并乘以权重列出相应的概率,然后对结果求和,但我觉得必须有一个更优雅解决方案。
我尝试在 Vlookup 和索引/匹配公式中将第二个表 ID 作为数组输入,但是虽然两者都接受一个范围作为查找值,但都只针对范围的第一个值执行而不是循环遍历整个数组。
我想理想情况下这个公式会
- 为 ID 设置一个 1 x 5 数组,
- 根据第一个表中的概率填充一个新的 1 x 5 数组
- 将新数组乘以现有的 1x5 数组作为权重
- 求和
[编辑] 所以对于上面的例子,最终的结果是 (50% x 1%)+(25% x 4%) + (15% x 1%) + (5% x 2%) + ( 5% x 2%) = 1.85%
实际的表格比我给出的示例要大得多,因此用于单个 vlookups 的简单 Sum() 函数已经出来了。
喜欢听听任何聪明的解决方案吗?
【问题讨论】:
-
我认为您应该向我们展示所需的输出。 “一张图抵千言”是 Stack Overflow 上的一句名言。
-
当然。对于上面的示例,输出将是:(50% x 1%)+(25% x 4%) + (15% * 1%) + (5% x 2%) + (5% x 2%) = 1.85% 有帮助吗?
-
没有。更新您的原始问题。