- 締切済み
エクセルの質問です。(間違えを探したい)
1万人分くらいの データです。 セルA1に " T.SATO " B1に" 1-00001" C1に" SATO/TAKASHI " が 入っています。 SATO TAKASHI の 名前の頭文字と名字をドットで区切って T.SATOと なっているデータなのですが、 その中の間違えを探したいと思います。 "S.TAKASHI"になっていたり(名字と名前が逆)、"T.SUZUKI"になっていたり、(違う名前)"SATO"となっていたり、"T.Sato"になっていたり(小文字になっている)することが 考えられます。 いい方法ありますか?(使用ソフトはエクセル2010です。)
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- KURUMITO
- ベストアンサー率42% (1835/4283)
D1セルに次の式を入力して下方にドラッグコピーします。 =IF(A1="","",IF(EXACT(A1,MID(C1,FIND("/",C1)+1,1)&"."&LEFT(C1,FIND("/",C1)-1)),"","違い")) ドラッグコピーが大変であればD1セルに上記の式を入力してからコピーし、その後にD列を選択してから右クリックして「貼り付け」を行います。大文字と小文字の違っている場合でもD列に「違い」の文字が表示されます。
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 一案です。 違っている場合はA列データに色を付けてみてはどうでしょうか? データが10000程度あるというコトなので、VBAでの一例です。 D・E列を作業用の列として使っていますので、D列以降はデータがない!という前提です。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) 尚、データは1行目からあるとしています。 Sub test() 'この行から Dim i As Long Dim myArray As Variant Application.ScreenUpdating = False Columns(1).Interior.ColorIndex = xlNone For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row myArray = Split(Cells(i, 3), "/") With Cells(i, 4) .Value = myArray(1) .Offset(, 1) = myArray(0) End With If Cells(i, 1) <> Left(Cells(i, 4), 1) & "." & Cells(i, 5) Then Cells(i, 1).Interior.ColorIndex = 3 End If Next i Columns("D:E").Delete Application.ScreenUpdating = True End Sub 'この行まで ※ 条件付書式が設定してある場合は色の変化がありませんので、 A列の条件付書式はなしにしておいてマクロを試してみてください。 参考になりますかね?m(__)m
- mt2008
- ベストアンサー率52% (885/1701)
D1に↓と、入れて「1」ならOK、「#VALUE」とエラーになれば間違い。 =FIND(RIGHT(A1,LEN(A1)-2)&"/"&LEFT(A1,1),C1) 1度確認するだけならこの程度でも十分かと