• ベストアンサー

エクセル 文字列操作

重複している姓の人だけ、名の一文字目を()付きで表示させたい場合、 操作列なしで表示させる方法を教えていただけないでしょうか。 姓と名の間に全角スペース有。 =例=  A列         B列 田中 一子     田中(一) 鈴木 二子     鈴木 久留米 三子   久留米(三) 後藤 四太子   後藤 林 五子       林(五) 斉藤 六子     斉藤 久留米 七子   久留米(七) 林 八太子     林(八) 山田 九子     山田 田中 十太子    田中(十)

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.7

こんにちは! すでに回答は出ていますが・・・ ちょっと長くなりますが、一発でやってみました。 データはA1セルからあるとします。 尚、スペースは全角とします。 B1セルに =IF(SUMPRODUCT((ISNUMBER(FIND(LEFT(A1,FIND(" ",A1)),A$1:A$1000)))*1)>1,LEFT(A1,FIND(" ",A1)-1)&"("&MID(A1,FIND(" ",A1)+1,1)&")",LEFT(A1,FIND(" ",A1)-1)) という数式を入れフィルハンドルでダブルクリックしてみてください。m(_ _)m

Otya1408
質問者

お礼

B1セルから一発でできないものかと試行錯誤していたので、大変助かりました。 ありがとうございます!

その他の回答 (6)

noname#204879
noname#204879
回答No.6

B1: =LEFT(A1,FIND(" ",A1)-1) C1: =IF(COUNTIF(B:B,B1)=1,B1,B1&"("&MID(A1,FIND(" ",A1)+1,1)&")")

Otya1408
質問者

お礼

項目をふやしてやっていたのですが、基データは項目が多く、 なんとか一発でできないものかと思い質問させていただいた次第です。 回答いただき、ありがとうございました。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.5

重複すみません。>1を入れ忘れた。 B2=LEFT($A2,FIND(" ",$A2)-1)&IF(COUNTIF($A:$A,LEFT($A2,FIND(" ",$A2)-1)&"*")>1,"("&MID($A2,FIND(" ",$A2)+1,1)&")","")

Otya1408
質問者

お礼

検証を繰り返し回答くださってありがとうございました。

noname#203218
noname#203218
回答No.4

#3です。 B2では無くB1セルの式です。 修正下さい。

noname#203218
noname#203218
回答No.3

B2=IF(COUNTIF(A:A,"*"&MID(A1,1,FIND(" ",A1)-1)&"*")>1,MID(A1,1,FIND(" ",A1)-1)&"("&MID(A1,FIND(" ",A1,1)+1,1)&")",MID(A1,1,FIND(" ",A1)-1))

  • angkor_h
  • ベストアンサー率35% (551/1557)
回答No.2

回答ではありません。余計な心配なので、無視してくださって結構です。 姓名のフルで扱ったほうが良いと思います。わざわざB列に変換する意味(効果)がわかりません。手書きの昔は(手短に記述するために)良く使っていたことは否定しませんが。 たとえば、佐藤 愛さん、佐藤 愛子さんの区別はどうされるのでしょうか。 過去に於いては、メルアドは自己申請のニックネームで本人との対象が全く関連付け出来ない場合があって苦労もしましたが、昨今では多くがフルネームに利用となっています。 たとえば、satou.ai@aaa.co.jp とか satoh.aiko@bbb.go.jp とか、民間も行政もです。 性だけでの区別を優先すると一つの職場では一人でも、全社では何人も居て連絡先間違い、は今でも良くあることです。

Otya1408
質問者

お礼

お気づかい、ありがとうございます。 おっしゃる通りですが、姓+名の頭文字で個人の特定が可能なことは確認済。 外部に出すデータではないこと、何より上司の意向なので...あしからず。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

B2=LEFT($A2,FIND(" ",$A2)-1)&IF(COUNTIF($A:$A,LEFT($A2,FIND(" ",$A2)-1)&"*"),"("&MID($A2,FIND(" ",$A2)+1,1)&")","")

Otya1408
質問者

お礼

素早い回答ありがとうございます。 ただ、重複していない姓の人の名前まで操作されてしまいますね...残念(>_<)

関連するQ&A