我正在尝试根据唯一的项目列表在 Excel 中生成唯一值列表。
基本上,我需要创建一个列表,根据宽度和长度对零件进行排序并分配零件名称。然后计算该零件的总数。如果列表不包含多个唯一长度,我可以让它正常工作。例如
我已阅读过此内容: Excel '10 公式根据两个数据点的交集查找并求和一行。(即名称(行)、月份(列)我认为关键的区别在于我需要通过名称获取名称和总数,而不使其唯一
另外,这在数据透视表中很容易,但我想基于公式来完成。
Part-G = 37
Part-G = 37
分类良好,总计为 Part-G | 数量 2 | @ 37"
Part-G = 38"
Part-G = 20"
总计为 G 部分 | 数量 2 | @ 首次发现的长度,但总计应为 G 部分 | 数量 1 | 38 英寸和 G 部分 | 数量 1 | 20 英寸
额外信息: 这是在 Woodwork for Inventor 中生成的,并导出到物料清单模板 - 这不是解决问题所必需的,但可能有一种我不熟悉的在 Inventor 中进行排序的方法,所以我将其包括在这里。
例如
输入:
部分 | 宽度 | 长度 |
---|---|---|
灾难恢复 | 1.75 | 三十七 |
灾难恢复 | 1.75 | 三十七 |
灾难恢复 | 1.75 | 三十二 |
是 | 1.75 | 31 |
生长素 | 3 | 20 |
我需要的输出:
匹配宽度 |
---|
1.75 |
第2部分 | 数量 | 长度 |
---|---|---|
灾难恢复 | 2 | 三十七 |
灾难恢复 | 1 | 三十二 |
是 | 1 | 31 |
我包括'宽度
以下是每个公式,为了便于举例,我简化了单元格引用和名称:
部分 |
---|
UNIQUE(FILTER(PART,WIDTH = MatchWidth),"") |
过滤器溢出到这些细胞中 |
数量 |
---|
(如果(总计(如果(筛选器(部分,宽度=匹配宽度)=第2部分,1,0))>0,SUM(如果(过滤器(部分,宽度=匹配宽度)=第1部分,1,0)),“”) |
数量 |
---|
指数(长度,匹配(第2部分,部分,0)) |
答案1
问题陈述:您想计算给定匹配宽度的唯一部分(部分 + 长度)的数量。
这里的关键是您通过唯一 ID(即零件编号和长度的串联)进行搜索。因此,所有与您匹配的唯一 ID 都匹配宽度:
=UNIQUE(FILTER(PART & ";" & LENGTH, WIDTH = MATCHWIDTH))
使用上述公式作为帮助列(我们称之为 ID)。则 PART2 为:
=LEFT(IDs, FIND(";", IDs)-1)
LENGTH2 为:
=RIGHT(IDs, LEN(IDs)-FIND(";", IDs))
数量是一个简单的 SUMIFS:
=SUMIFS(PART, PART2, LENGTH, LENGTH2)