Home » excel » excel – Comparing how many letters match

# excel – Comparing how many letters match

Questions:

I’m trying to compare two cells in Excel to retrieve a numeric value, for example:

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

In that line I would like to compare the letters shown with the response, and return a number for how many are correct. I would like it to have the number 4, as there are four letters typed that match the letters shown.

VBA might be more suitable but you have not tagged as such and a formula should work:

``````=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)
``````

@pnuts’ answer works if Letters Shown (in C1) is always 6 or fewer characters.

The following will work if Response (in F1) is always 4 or fewer characters:

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

Either method can easily be expanded as needed.

Just FYI, here is a solution for any length of response. It also has the advantage of being shorter than the other given solutions (I think)

``````{=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))}
``````

It’s an array formula so leave out the curly braces and enter the formula using Ctrl+Shift+Enter

The solution creates two arrays like below

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

And then loops through each of the Inputted characters looking for a match in the Shown array and returning a 1 if there is a match, otherwise a 0. Finally the `SUM` adds all of the 1’s (matches) to give the required result.