【发布时间】:2020-01-14 20:39:51
【问题描述】:
我正在尝试在 Excel 电子表格中完成一项任务。我有一个字符串列表,每个字符串都是一些稍长的字符串的子字符串。我想做的是针对一系列较长的字符串(列中的一系列单元格)搜索每个子字符串(单元格索引)并返回实际的单元格索引加 1(或者实际上是该单元格索引的数字部分加上1,例如 B451 => 451+1 = 452)。
例如,我想在工作表 sorted_data 的单元格 G2 中搜索字符串“AAA”与工作表 data_all 中的单元格范围 B2:B1001 并希望单元格索引 + 1 范围 B2:B1001,其中找到字符串“BAAAB”,例如452(如果“BAAAB”在单元格 B451 中)。字符串和子字符串是唯一的,因此不可能多次命中。
公式必须扩展到工作表 sorted_data 的 1000 列,但搜索范围始终保持不变。
我有公式
=COUNTIF('data_all'!$B$2:$B$1001,"*"&'sorted_data'!G2&"*") > 0
不过,这只会返回 TRUE 或 FALSE,而不是我想要的。有任何想法吗?
【问题讨论】:
-
@TerryW 序列是生物序列,例如“FQILGALST”是子字符串,“CNYPIHAANRELSIFQILGALSTLL”是实际字符串。它们都是独一无二的,因为我在 Python 脚本中生成这些随机序列时验证了这一点。目前并没有真正的大局观,只是我必须做的一项琐碎任务,以使数据 SPSS 以一种易于执行相关分析的方式具有可读性。
标签: excel indexing excel-formula match