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