我正在使用MCONCAT(morefunc Excel加载项包的一部分)从数据列表中提取唯一匹配项,我的代码如下:
=MCONCAT(UNIQUEVALUES(OFFSET(B$1,MATCH(D2,A$2:A$68761,0),,COUNTIF(A$2:A$68761,D2))),", ")
这一切都可行,只要有多个结果,否则它似乎不起作用。它可以在不使用UNIQUEVALUES的情况下工作,但会为某些行返回大量结果。
=MCONCAT(OFFSET(B$1,MATCH(D8,A$2:A$68761,0),,COUNTIF(A$2:A$68761,D8)),", ")
有没有人知道如何让我的第一个查询适用于只有一个匹配的行?
非常感谢,
乔
答案 0 :(得分:1)
这里发生的是UNIQUEVALUES函数需要传递一个“数组”,在大多数情况下OFFSET会这样做.....除非COUNTIF = 1且OFFSET只是一个值(不是包含数组)一个值)和UNIQUEVALUES不喜欢这样,所以返回一个错误。我不知道一种特别优雅的方式,也许只是在出现错误时在公式中建立一个VLOOKUP,即
=IFERROR(MCONCAT(UNIQUEVALUES(OFFSET(B$1,MATCH(D2,A$2:A$68761,0),,COUNTIF(A$2:A$68761,D2))),", "),VLOOKUP(D2,A$2:B$68761,2,0))