如图所示A列是数据,B列是想要的结果,Excel里如何让包含CDS_PINID的单元格对应上一个不包含CDS_PINID的单元格

如图所示A列是数据,B列是想要的结果,Excel里如何让包含CDS_PINID的单元格对应上一个不包含CDS_PINID的单元格

以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
根据您的描述,我推测您想查找的是在包含"CDS_PINID"的单元格上方的不包含"CDS_PINID"的单元格。可以使用Excel的查找功能结合一些公式来实现这个需求。以下是一种可能的解决方案:
假设您的数据在Sheet1的A列和B列中,您想在C列得到结果。
=IF(ISNUMBER(SEARCH("CDS_PINID", B1)), ALOOKUP(FALSE, ISNUMBER(SEARCH("CDS_PINID", $B$1:$B1)), $A$1:$A1), "")
这个公式的逻辑是这样的:首先检查B列的单元格是否包含"CDS_PINID"。如果包含,那么使用ALOOKUP函数在B列向上查找第一个不包含"CDS_PINID"的单元格对应的A列的值。如果没有找到或者已经是第一行数据了,就返回空字符串。注意这里的$B$1:$B和$A$1:$A是公式引用的范围,根据您的实际需要调整。另外,ALOOKUP函数在某些版本的Excel中可能不可用,如果您的Excel版本不支持,可以尝试使用其他方法如数组公式或者辅助列来实现。
请注意,这种方法假设您的数据是按照您提供的示例那样排列的,即包含"CDS_PINID"的单元格总是在不包含"CDS_PINID"的单元格的下方。如果您的数据排列方式不同,可能需要调整公式来适应您的实际情况。此外,这种方法的效率在大量数据处理时可能不是很高,如果您的数据量非常大,可能需要考虑使用其他工具或者编程方法来解决这个问题。