在Google Sheets中为MAXIFS添加多条件筛选的实现方法
Google Sheets 筛选指定TID的最新ACTION问题
表格数据
SHEET #1: KDCAlerts
| ROWID | ACCT | PRIO | TID | ACTION | TICK | CPRICE | CREATEDATE |
|---|---|---|---|---|---|---|---|
| 1440026 | 20 | 1 | X3T8K5 | X_OPEN_LEVEL | BITMEX:BTCUSD | 12000 | 10/5/2022 13:56:46 |
| 1993961 | 20 | 1 | X3T8K5 | X_TP_1_LEVEL | BITMEX:BTCUSD | 12000 | 10/5/2022 18:17:12 |
| 2537954 | 20 | 1 | X3T8K5 | X_TARGET_LEVEL | BITMEX:BTCUSD | 12000 | 10/5/2022 18:17:46 |
SHEET #2: KDCLog
| STATUS | ALERT | ID |
|---|---|---|
| IN PROCESS | X3T8K5 | |
| IN PROCESS | YNILX5 |
需求
我需要获取指定TID对应的最新ACTION,比如示例中TID为X3T8K5时,最新ACTION是X_TARGET_LEVEL,因为它的CREATEDATE最晚(10/5/2022 18:17:46)。
现有尝试与问题
我最初使用的公式如下:
= FILTER(KDCAlerts!E2:E10, KDCAlerts!H2:H10=( MAXIFS(KDCAlerts!H2:H10,KDCAlerts!D2:D10, C7)) )
这个公式能运行,但仅依赖日期筛选,不够理想。我需要额外添加TID(对应单元格C7)作为筛选条件,请问该如何修改?
TIA
更新内容
@player0、@Terio 感谢回复!我补充了原帖信息进一步说明情况,编写了以下公式,可基本实现为KDCLog的Status字段分配状态的需求:
=IF( ISBLANK(C7) , "NEW", ( IF ( LEN(R7) < 2 , "STAGING" , ( IF ( NOT ( ISBLANK( FILTER(KDCAlerts!J, KDCAlerts!H=( MAXIFS(KDCAlerts!H,KDCAlerts!D, C7)) ) ) ) , "IN PROCESS" , ( IF( NOT( ISBLANK( FILTER(KDCAlerts!L, KDCAlerts!H=( MAXIFS(KDCAlerts!H,KDCAlerts!D, C7)) ) ) ) , "COMPLETE" , ( FILTER(KDCAlerts!E, KDCAlerts!H=( MAXIFS(KDCAlerts!H,KDCAlerts!D, C7)) ) ) ) ) ) ) ) ) )
不过该公式仍存在仅依赖日期筛选的问题,我会尝试你们的建议并更新结果。
内容的提问来源于stack exchange,提问作者Casey Harrils
相关产品推荐
相关产品推荐

