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

### Answer：

@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.

### Answer：

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.

Tags: excelexcel