dポイントプレゼントキャンペーン実施中!

エクセルにおいて、2つのセルに共通する文字列を抽出することは可能でしょうか。

たとえば

「吉田明」と「株式会社吉田製作所」と入っている2つのセルを範囲として、
「吉田」を返すようにしたいと考えています。

初歩的な質問かもしれませんが、よろしくお願いいたします。

A 回答 (1件)

こんにちは!



>初歩的な質問かもしれませんが・・・

初歩的ではないと思います。
文字数が決まっていないとなれば結構厄介です。

手っ取り早くVBAでの一例です。
A・B列にそれぞれ文字列が入っていて、C列に共通の文字を表示するようにしてみました。

Sub Sample1()
Dim i As Long, k As Long
Dim myStr1 As String, myStr2 As String, buf As String
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Len(Cells(i, "A")) <= Len(Cells(i, "B")) Then
myStr1 = Cells(i, "A")
myStr2 = Cells(i, "B")
Else
myStr1 = Cells(i, "B")
myStr2 = Cells(i, "A")
End If
For k = 1 To Len(myStr1)
If InStr(myStr2, Mid(myStr1, k, 1)) > 0 Then
buf = buf & Mid(myStr1, k, 1)
End If
Next k
Cells(i, "C") = buf
buf = ""
Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。

早速やってみましたが、イメージどおりに挙動しました。

お礼の言葉のみでは心苦しいくらいですが、本当にありがとうございます。

また、お世話になることがあるかもしれませんが、何卒よろしくお願い
いたします。

お礼日時:2017/08/28 11:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!