通过多个标准将单元格1的一部分与所有单元格2连接,以单元格1的余数

时间:2017-03-07 10:50:49

标签: excel search

简介

这是here发布和回答的问题的延续,但已被建议由@Jordan单独发布。

目标:将单元格1的所有内容与单元格2的所有内容相结合,完成单元格1的剩余部分。 扭曲:必须对单元格1应用多个条件。

问题

在成功改变Jordan的优秀答案以适应加入 Thinglag 的连接名称后,只要只有一个标准可以识别,以下函数将执行该任务:

IF(F2="",E2,CONCATENATE(LEFT(E2,SEARCH(" T",E2))&"("&F2&")"&MID(E2,SEARCH(" T",E2),Len(E2)-SEARCH(" T",E2)+1)))

然而,对于教区和附件,需要多个标准,vz。以下内容:

  • 松恩
  • Hovedsogn
  • 附件
  • Præstegjeld

结构

  • AB-AH:Sogn_anx_ [1-7]
  • AI-AO:Sogn_anx_ [1-7] _altnvn
  • AP-AV:Sogn_anx_ [1-7] _hele

与原始帖子一样,我有一个来源,提供该地区的当前官方名称,以及以前使用的名称(提供当前名称的词源信息)。在包含旧名称的来源中,它作为一个代表性的评论给出,例如:

  • 'Søndeløvs(Sundaleid)附件'
  • 'Tromø(Thrumø)附件'
  • 'Hvitesø(Hviteseids)Hovedsogn'
  • 'Attraa(Attrod)Hovedsogn'
  • 'Thjølings(Thjodaling)Sogn'

这些已使用三列输入数据库:

  • 一个正式名称
  • 一个旧名称
  • 一个显示名称为打印

这是为了在公开提供此信息时提供更好的可搜索性。

示例数据:

Sogn_anx_1          Sogn_anx_2      Sogn_anx_3          …   Sogn_anx_1_altnvn   Sogn_anx_2_altnvn   Sogn_anx_3_altnvn   …   Sogn_anx_1_hele                  Sogn_anx_2_hele           Sogn_anx_3_hele
AB                  AC              AD                  …   AI                  AJ                  AK                  …   AP                               AQ                        AR
Soleims Hovedsogn                                       …   Solheims                                                    …   Soleims (Solheims) Hovedsogn
Meleims Annex                                           …   Medelheims                                                  …   Meleims (Medelheims) Hovedsogn
Holdens Hovedsogn   Romenæs Annex   Holdens Hovedsogn   …                       Rumenæs             Hollen              …   Holdens Hovedsogn                Romenæs (Rumenæs) Annex   Holdens (Hollen) Hovedsogn

可以看出,第一组列包含正式名称;第二组列(altnvn = alt_name)包含旧名称,在源代码中写为paranthetical remark;第三组列包含完整的连接名称(hele = entire / whole),其中的替代名称 - 包括在parantheses。

期望的结果

我想在第三列中执行与引用的帖子相同的任务,只是这次它必须能够通过查找四个条件中的任何一个来执行搜索,因此" T"会必须由所有四种变体替换:" So"" Ho"" An"" Pr"(注意:空格是有意的)。我尝试使用OR编辑原始函数,但这并不奇怪 - 失败。

1 个答案:

答案 0 :(得分:0)

使用VBA解决方案可能更简单。但是,使用SEARCH查找几个已定义单词之一的直接问题可以通过使用find_text的数组常量并将这些项附加到within_text来实现。如果无法保证始终显示find_text,则您需要检查结果是否小于原始within_text的长度。

您可能还会考虑使用区分大小写的Find函数或更长的find_text字符串,以防可能存在歧义。

=MIN(SEARCH({" So"," Ho"," An"," Pr"},AB3&" So Ho An Pr"))