繁体   English   中英

在 Google 表格下向 MAXIFS 添加更多过滤器

[英]Adding more filters to MAXIFS under Google Sheets

我有以下来自 Google 表格的数据集(我正在使用 2 个 Google 表格):

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

我想做的是获取集合中的最新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)) ) 

它确实有效 - 但是 - 它仅取决于DATE才能找到正确的答案。 这并不理想。 我还需要添加另一个过滤器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)) ) )  ) )  )  )   ) )   )  

但是 - 仍然有使用日期的问题(如上所述)。

将尝试您提出的建议并用我的结果更新帖子。

这样的解决方案?

=INDEX(SORTN(FILTER({E2:E,H2:H},D2:D="X3T8K5"),1,,2,FALSE),,1)

使用C7更改TID过滤器

尝试:

=XLOOKUP(D2; D2:D4; A2:H4;;;-1)

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM