Excel 计算一个单元格中列表中出现的单词数
我有一列人们给出的文字游戏答案,以及所有可能正确答案的列表。我想知道如何让excel计算出正确答案列表中有多少单词出现在每个人的回复单元格中 因此,A列包含人们的响应数据,如下所示:Excel 计算一个单元格中列表中出现的单词数,excel,Excel,我有一列人们给出的文字游戏答案,以及所有可能正确答案的列表。我想知道如何让excel计算出正确答案列表中有多少单词出现在每个人的回复单元格中 因此,A列包含人们的响应数据,如下所示: glare, lake, car rag, clear, gear, lear, cake, glare, rack, keg, car, care, leak, ace cake, lake, lark, car, rake, cage, real, ekl, rage Leak, Rage, Gale, Kal
glare, lake, car
rag, clear, gear, lear, cake, glare, rack, keg, car, care, leak, ace
cake, lake, lark, car, rake, cage, real, ekl, rage
Leak, Rage, Gale, Kale, Rag, Lag, Large, Lack, Real, Rake, Race, Car, Care, Leg, Cage
下面是所有正确答案的列表:
grackle, calker, lacker, rackle, argle, cager, carle, clear, clerk, crake, creak, glace, glare, grace, lacer, lager, laker, large, regal, acre, ager, alec, cage, cake, calk, care, cark, carl, clag, crag, earl, egal, gale, gear, geck, kale, lace, lack, lake, lark, leak, lear, race, rack, rage, rake, rale, real, reck, ace, age, ale, arc, are, ark, car, cel, ear, elk, era, erg, gae, gal, gar, gel, kae, kea, keg, lac, lag, lar, lea, leg, lek, rag, rec, reg
所以,第一个人写了3个正确答案,B1应该说“3”,B2应该说“12”,B3应该说“8”(不是“9”,因为“ekl”不在正确答案列表中),等等
我假设这最好是用宏而不是公式来完成的,但我真的不知道从哪里开始,所以我非常感谢您的帮助。解决方案是基于宏还是基于公式,对我来说并不重要。谢谢大家! 如果列表中有正确的单词,每个单元格一个单词,例如在
Z2:Z20
中没有空格,则可以在B1中使用此公式
=SUMPRODUCT(ISNUMBER(搜索(“&Z$2:Z$20&“,”,“&A1&“,”))+0)
如果列表中有正确的单词,每个单元格一个单词,例如在Z2:Z20
中没有空格,则可以在B1中使用此公式
=SUMPRODUCT(ISNUMBER(搜索(“&Z$2:Z$20&“,”,“&A1&“,”))+0)
如果列表中有正确的单词,每个单元格一个单词,例如在Z2:Z20
中没有空格,则可以在B1中使用此公式
=SUMPRODUCT(ISNUMBER(搜索(“&Z$2:Z$20&“,”,“&A1&“,”))+0)
如果列表中有正确的单词,每个单元格一个单词,例如在Z2:Z20
中没有空格,则可以在B1中使用此公式
=SUMPRODUCT(ISNUMBER(搜索(“&Z$2:Z$20&“,”,“&A1&“,”))+0)
这是一个基于宏(UDF)的解决方案。在标准模块中输入以下自定义项:
Public Function CorrectCount(r1 As Range, r2 As Range) As Long
Dim v1 As String, v2 As String
CorrectCount = 0
v1 = "," & r1.Value & ","
For Each r In r2
v2 = "," & r.Value & ","
If InStr(1, v1, v2) > 0 Then
CorrectCount = CorrectCount + 1
End If
Next r
End Function
用户定义函数(UDF)非常易于安装和使用:
Public Function CorrectCount(r1 As Range, r2 As Range) As Long
Dim v1 As String, v2 As String
CorrectCount = 0
v1 = "," & r1.Value & ","
For Each r In r2
v2 = "," & r.Value & ","
If InStr(1, v1, v2) > 0 Then
CorrectCount = CorrectCount + 1
End If
Next r
End Function
用户定义函数(UDF)非常易于安装和使用:
Public Function CorrectCount(r1 As Range, r2 As Range) As Long
Dim v1 As String, v2 As String
CorrectCount = 0
v1 = "," & r1.Value & ","
For Each r In r2
v2 = "," & r.Value & ","
If InStr(1, v1, v2) > 0 Then
CorrectCount = CorrectCount + 1
End If
Next r
End Function
用户定义函数(UDF)非常易于安装和使用:
Public Function CorrectCount(r1 As Range, r2 As Range) As Long
Dim v1 As String, v2 As String
CorrectCount = 0
v1 = "," & r1.Value & ","
For Each r In r2
v2 = "," & r.Value & ","
If InStr(1, v1, v2) > 0 Then
CorrectCount = CorrectCount + 1
End If
Next r
End Function
用户定义函数(UDF)非常易于安装和使用:
Wait,所有数据仅在A列中?是的,所有数据仅在A列中,用逗号Wait分隔,所有数据仅在A列中?是的,所有数据仅在A列中,用逗号Wait分隔,所有数据