2016-10-21 12 views
0

条件付き書式を使用して重複セルを見つける方法はわかっていますが、それは2つ以上のセル間のテキストを比較しています。Excel:セル内に重複したテキストを持つセルを見つけたい

各セル内にテキストが重複しているセルを戻す必要があります。

例:ここでは

-allstar company allstar co 
-best products inc 
-chemical corporation chemical corp 
-dumont petro 
-EPT corp E P T corp 

は、テキストと5個の細胞です。セル1,3,5は重複したテキストを持ち、戻ったり強調表示したりする必要があります。

私はVBAを知らないので、避けることができればそれが最適です。

ありがとうございます

+1

を置くには重複がスペースで区切られることを想定して、我々は安全ですか?言い換えれば、 'allstar company all star company'は「会社」だけを取り出すべきでしょうか?したがって、あなたの例では、最後のものは、一度しか出現しないので、 'corp'、* not *' EPT'のために重複していることが分かります。問題がどこに出てくるのか分かりますか? 「corp」が2回あるので、「Microsoft corp apple corp」は強調表示されますか?おそらくあなたは、これらの企業のどこかにあなたが比較できる「主要リスト」を持っていますか? – BruceWayne

+0

スペースが分割するのが合理的な仮定であれば、テキストを列に活用し、find関数の組み合わせを使用することもできますか?動的にするのは簡単ではありません。 – legendjr

+0

はい、その間のスペース –

答えて

0

だから、単語全体を探していると仮定すると、スペースで区切ることができます。私はあなたがVBAを避けたがっていることを知っていますが、それはどのように自動化された方法でこれを行う方法を知っている唯一の方法です。したがって、スプレッドシートにモジュールを挿入すると、ここで書いたこの関数を使用して、セルから呼び出すことができます。だから、

Option Explicit 
Public Function DuplicateWordCheck(text As String) As Boolean 
    Dim textArray As Variant, i As Integer, j As Integer 
    DuplicateWordCheck = False 
    textArray = Split(text, " ") 
    For i = LBound(textArray) To UBound(textArray) 
     For j = i + 1 To UBound(textArray) 
      If textArray(i) = textArray(j) Then 
       DuplicateWordCheck = True 
       Exit Function 
      End If 
     Next 
    Next 
End Function 

あなたの例は、セルA1に開始した場合、セルB1に数式=DuplicateWordCheck(A1)

+0

私はAlt + F11がVBAエディタを開いていることを知っています。 –

+0

申し訳ありません、私はVBAを使用したことはありません –

関連する問題