比较多少个字母匹配

时间:2014-10-26 21:05:46

标签: excel excel-formula match worksheet-function

我正在尝试比较Excel中的两个单元格以检索数值,例如:

Trial type   Duration    Letters shown   Distracters    Laterality   Response  Full  
 6           80          XZHTEJ          0              Bilateral    TEHZ

在该行中,我想比较显示的字母和响应,并返回一个数字是否正确。我希望它的数字为4,因为有四个字母与显示的字母匹配。

3 个答案:

答案 0 :(得分:1)

VBA可能更合适,但您没有标记,公式应该有效:

=IFERROR(FIND(MID(C1,1,1),F1)>0,0)+IFERROR(FIND(MID(C1,2,1),F1)>0,0)+IFERROR(FIND(MID(C1,3,1),F1)>0,0)+IFERROR(FIND(MID(C1,4,1),F1)>0,0)++IFERROR(FIND(MID(C1,5,1),F1)>0,0)+IFERROR(FIND(MID(C1,6,1),F1)>0,0)

答案 1 :(得分:1)

如果显示的字母(在C1中)总是不超过6个字符,

@pnuts'的答案就有效。

如果响应(在F1中)总是4个或更少字符,则以下内容将起作用:

=LEN(C1)-
 LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(
     C1,MID(F1,1,1),""),MID(F1,2,1),""),MID(F1,3,1),""),MID(F1,4,1),"")
 )

任何一种方法都可以根据需要轻松扩展。

答案 2 :(得分:1)

仅供参考,这里是任何响应长度的解决方案。它还具有比其他给定解决方案更短的优势(我认为)

{=SUM(IF(ISERROR(MATCH(MID(F1,ROW(INDIRECT("B1:B"&LEN(F1))),1),MID(C1,ROW(INDIRECT("A1:A"&LEN(C1))),1),0)),0,1))}

这是一个数组公式,所以省略花括号并使用 Ctrl + Shift + 输入

输入公式

该解决方案创建了两个数组,如下所示

Shown      Inputted
 X          T
 Z          E
 H          H
 T          Z
 E
 J

然后遍历每个输入的字符,在显示的数组中查找匹配项,如果匹配则返回1,否则返回0.最后SUM添加所有1(匹配)以提供所需的结果。