请教Excel高手

b
bluegene123
楼主 (北美华人网)
我有两个 lists of IDs, 两个list 中都有 duplicates, 请问怎么把 distinct ID 都找出来,再和成一个 list. 我知道有 unique 这个 function, 但需要手动的做几步。 如把 list B copy 到 list A 下面, 弄成一个list, 然后才 unique (), 有没什么方法直接就call unique (), 把两个 list/columns, unique 了后再merge, 或 combine 了再unique?
如下面两个 list: ColA, ColB A, A A,C B,D D,B D,A
我想得到: A B C D
多谢了!
S
Silverlining123
我也不是高手哈。你是要remove duplicate value 吗?如果是的话,你把column B 贴到 column A 下面,用Data - remove duplicates 就行了
f
felali9
把两列分隔开加个blank column. 分别Remove duplicate 就好了。
复杂一点的用powerquery group 一下。分成两个表格在power query里stack 一下再groupby
b
bluegene123
我也不是高手哈。你是要remove duplicate value 吗?如果是的话,你把column B 贴到 column A 下面,用Data - remove duplicates 就行了
Silverlining123 发表于 2022-01-28 11:13

多谢, 但我不想手动做多一步, 就用一个 formula 就拿出来。 因为这个要重复的做, 这里虽然手动做多一步, 但后面变成手动做多很多很多步了。
b
bluegene123
把两列分隔开加个blank column. 分别Remove duplicate 就好了。
复杂一点的用powerquery group 一下。分成两个表格在power query里stack 一下再groupby
felali9 发表于 2022-01-28 11:14

多谢, 我了解一下。这个要下载。。复杂了点。
落地生财
用pivot Table就出来了
b
bluegene123
用pivot Table就出来了
落地生财 发表于 2022-01-28 11:30

好像弄出来不是我想要的。。。。
落地生财
好像弄出来不是我想要的。。。。

bluegene123 发表于 2022-01-28 11:37

只看了前半句要找出单独的ID😓 那pivot table不行 如果你需要反复做这个活,最简单的就是record macro, 这样你做一次就可以了,以后每次做同样的步骤只需要run macros
皓月清风
基本上就是分两步:
1.用下面的公式把原有的两个arrays 垒成一个新array: =INDEX(A:B,1+INT((ROW(A1)-1)/COLUMNS(A:B)),MOD(ROW(A1)-1+COLUMNS(A:B),COLUMNS(A:B))+1)
公式里A,B是原有两个arrays的columns (Columns A, B).
2.再用UNIQUE()公式,找出1生成的新array里面的unique values。
f
felali9
回复 5楼bluegene123的帖子
不用下载,你把两个列定义成两个range..在data那里from table range导进去就可以stack了。或者用getdata那里导一下。以后只要refresh就好了。详情请看powerquery YouTube.😄
t
tiramixu
Excel 里面有unique function了吗?只记得Google sheet 里面有这个
皓月清风
回复 11楼tiramixu的帖子
当然有
M
Modage
回复 1楼bluegene123的帖子
如果你的Excel是Office 365而且版本支持SORT,LET这两个函数,那么可以用这个: =SORT(UNIQUE(TRANSPOSE(LET(colA,A1:A9, colB,B1:B9, ulist1,UNIQUE(colA), ulist2,UNIQUE(colB), rows1,COUNTA(ulist1),rows2,COUNTA(ulist2), rowindex,SEQUENCE(1,rows1+rows2), IF(rowindex<=rows1, INDEX(ulist1,rowindex), INDEX(ulist2,rowindex-rows1))))))
m
maomao
Text to column 没用的删了就可以了
b
bluegene123
回复 1楼bluegene123的帖子
如果你的Excel是Office 365而且版本支持SORT,LET这两个函数,那么可以用这个: =SORT(UNIQUE(TRANSPOSE(LET(colA,A1:A9, colB,B1:B9, ulist1,UNIQUE(colA), ulist2,UNIQUE(colB), rows1,COUNTA(ulist1),rows2,COUNTA(ulist2), rowindex,SEQUENCE(1,rows1+rows2), IF(rowindex<=rows1, INDEX(ulist1,rowindex), INDEX(ulist2,rowindex-rows1))))))
Modage 发表于 2022-01-28 12:20

OMFG, 这太牛了,O--zz, excatly what I wanted, thanks!慢慢研究一下。
s
swmbo
回复 1楼bluegene123的帖子
如果你的Excel是Office 365而且版本支持SORT,LET这两个函数,那么可以用这个: =SORT(UNIQUE(TRANSPOSE(LET(colA,A1:A9, colB,B1:B9, ulist1,UNIQUE(colA), ulist2,UNIQUE(colB), rows1,COUNTA(ulist1),rows2,COUNTA(ulist2), rowindex,SEQUENCE(1,rows1+rows2), IF(rowindex<=rows1, INDEX(ulist1,rowindex), INDEX(ulist2,rowindex-rows1))))))
Modage 发表于 2022-01-28 12:20

大神!