我希望通过鸟类研究获得最后一点帮助。 我想在患者的诊断列表中搜索特定的诊断(文本线程),然后返回与该诊断相关的身体系统。
在下面的示例中,A、B、C 列是查找列表。 D 列是患者编号。 E 列是搜索列表。 F 列和 G 列是所需的输出列表。
在此示例中,第一位患者 (D2,E2) 被诊断患有心肌纤维化和肺部休克。 从“所有诊断”列表中,我们可以找到这两个诊断,并看到“纤维化、心肌”(A3) 影响心血管系统 (CARDIO) (B3=Y)。 因此,期望的输出是第一位患者的心血管系统受到影响,Y (F2=Y)。 第一个患者(D2,E2)也出现肺部休克。 肺部休克 (A2) 不影响心脏系统 (B2=空白),但会影响呼吸系统 (RESP) (C2=Y)。 因此,第一个患者的呼吸系统的输出也会受到影响,Y (G2=Y)。
对于第二名患者 (D3,E3),所需输出为 G3=Y(RESP 受影响),但 F3=空白(CARDIO 不受影响)。对于第三位患者(D4、E4),CARDIO 或 RESP 系统均不受影响,因此所需的输出是 F4=空白且 G4=空白
所有诊断列表 | 有氧运动 | 响应 | PT# | 患者的诊断(ES) | 有氧运动 | 响应 |
---|---|---|---|---|---|---|
肺部休克 | 是 | 1 | 纤维化、心肌;肺部休克 | 是 | 是 | |
纤维化,心肌 | 是 | 2 | 肺部血栓 | 是 | ||
肺部血栓 | 是 | 3 | 脑部水肿 |
我希望我已经充分解释了我的困境,并且感谢所有帮助!
劳伦。
我尝试了一些简单的 SEARCH 和 XLOOKUP 和 (IFERROR(INDEX 公式,但我似乎找不到从查找列表中的不同列返回文本的方法。
您需要对 CARDIO 列(F 列)使用功能组合:
=IF(SUMPRODUCT(--ISNUMBER(SEARCH(A$2:A$4,E2)))>0,XLOOKUP(TRUE,ISNUMBER(SEARCH(A$2:A$4,E2)),B$2:B$4,""),"")
对于 RESP 列(G 列):
=IF(SUMPRODUCT(--ISNUMBER(SEARCH(A$2:A$4,E2)))>0,XLOOKUP(TRUE,ISNUMBER(SEARCH(A$2:A$4,E2)),C$2:C$4,""),"")
在 F2 中输入第一个公式,在 G2 中输入第二个公式,并将其复制给所有患者。