如果两个单元格至少有一个共同词,则为真,否则为假:Excel 公式

IF two cells have at least one common word, true, else false: Excel formula

我有两列填充了文本。我想逐行比较两个单元格之间的任何相同单词。如何使用 Excel 公式或 vba 函数来实现?

此致,

尝试以下 UDF():

Public Function Kompare(s1 As String, s2 As String) As Boolean
    ary = Split(s1, " ")
    bry = Split(s2, " ")
    Kompare = False
    For Each a In ary
        For Each b In bry
            If a = b Then
                Kompare = True
                Exit Function
            End If
        Next b
    Next a
End Function

需要第三列。即:
A…………B…………C
Text,1,another...Text,2,another......'=CommonWords(A1,B1,",") (Result another,Text)
为了能够使用 UDF 粘贴以下内容:

Function CommonWords(Text1 As Variant, Text2 As Variant, Character As Variant)
Dim ArrayText1 As Variant: ArrayText1 = Split(Text1, Character)
Dim ItemArrayText1 As Variant
Dim ArrayText2 As Variant: ArrayText2 = Split(Text2, Character)
Dim ItemArrayText2 As Variant
Dim SummaryCommonWords As Variant
    For Each ItemArrayText1 In ArrayText1
    If InStr(Text2, ItemArrayText1) > 0 And InStr(SummaryCommonWords, ItemArrayText1) = 0 Then SummaryCommonWords = IIf(SummaryCommonWords = "", ItemArrayText1, ItemArrayText1 & Character & SummaryCommonWords)
    Next ItemArrayText1
    For Each ItemArrayText2 In ArrayText2
    If InStr(Text1, ItemArrayText2) > 0 And InStr(SummaryCommonWords, ItemArrayText2) = 0 Then SummaryCommonWords = IIf(SummaryCommonWords = "", ItemArrayText2, ItemArrayText2 & Character & SummaryCommonWords)
    Next ItemArrayText2
    CommonWords = IIf(CStr(SummaryCommonWords) <> "", SummaryCommonWords, "No common words!")
End Function

作为 OT:

  1. 知道哪些词被重复分析而不是真假陈述不是更好吗?
  2. 您需要使用它来忽略单词中的空格,如果需要则大写。