google-sheets - 根据公式传递的第三列数据唯一
问题描述
我有一个非常广泛的公式,可以在E2
其中提供这些数据column E - F - G
我想知道如何在我的公式 ( E2
) 中添加UNIQUE
一种根据Column G
.
我不会把公式放在问题中,因为它太大了,所以我会留下电子表格的链接,以防有必要对整个公式进行分析。
https://docs.google.com/spreadsheets/d/13FwHxEUz_dYzv4taarj_VzPI6yofYurwqUwSYIrHoN0/edit?usp=sharing
例如:
有一个价值:
2020/03/13 - PSTP - LINK/3031297/
还有价值:
2020/03/13 - 20:20 - LINK/3031297/
正确的是,在 之后UNIQUE
,只保留这个值:
2020/03/13 - PSTP - LINK/3031297/
解决方案
As @MattKing hasn't posted the answer I will post it myself as Community Wiki.
So if you get all the imports sorted already you can just create a range using brackets {}
and after that QUERY
them and use an UNIQUE
statement with ARRAYFORMULA
.
In your particular case with all the imports you can just go ahead and do it like so:
=ARRAYFORMULA(VLOOKUP(UNIQUE(QUERY(TRIM(
{
IFERROR(
{
TEXT(IMPORTXML(D2,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D2,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D2,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D2,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D2,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D3,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D3,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D3,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D3,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D3,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D4,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D4,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D4,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D4,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D4,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D5,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D5,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D5,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D5,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D5,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D6,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D6,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D6,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D6,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D6,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(FILTER(Sheet2!A2:C,Sheet2!A2:A<>""),{"","",""})
}),"select Col3 where Col3<>''")),QUERY(TRIM(
{
IFERROR(
{
TEXT(IMPORTXML(D2,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D2,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D2,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D2,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D2,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D3,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D3,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D3,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D3,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D3,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D4,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D4,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D4,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D4,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D4,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D5,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D5,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D5,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D5,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D5,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(
{
TEXT(IMPORTXML(D6,"//td[@class='date no-repetition' and ../td[@class='score-time status']]/span"),"yyyy/mm/dd"),
TEXT(SUBSTITUTE(IMPORTXML(D6,"//td[@class='score-time status']/a")," ",""),"hh:mm"),
IFERROR("https://int.soccerway.com"&LEFT(IMPORTXML(D6,"//td[@class='score-time status']/a/@href"),FIND("?ICID=",IMPORTXML(D6,"//td[@class='score-time status']/a/@href"))-1),"https://int.soccerway.com"&IMPORTXML(D6,"//td[@class='score-time status']/a/@href"))
}
,{"","",""})
;
IFERROR(FILTER(Sheet2!A2:C,Sheet2!A2:A<>""),{"","",""})
}),"Select Col3,Col1,Col2"),{2,3,1},0))
And change the range inside TRIM
to whatever you want to adapt this code.
References
推荐阅读
- angular - 无法更改当前节点的展开/折叠图标
- c# - C# 类没有打印出来
- c++ - 在 Windows 上使用 CLION 使用 openMP 编译程序
- node.js - npm 对等安装错误是什么意思?
- python - Anaconda tensorflow 包不完整?(只有几千字节的文件大小)
- asp.net-core - 如何在 Kestrel 网络服务器中使用更新的服务证书
- javascript - 当它们进入视口时延迟加载地图
- realm - 在域 Keycloak 服务器上创建领域/客户端不会立即对从属 Keycloak 节点可见
- google-sheets - 将多列组合成一个范围
- java - 关于这段 Java 代码的问题,为什么要这样写