大変な名寄せ作業で事前にしておくこと案外大変な名寄せ作業で事前にしておくこと|あべっきぃの超ExcelTweet更新日:2012-10-19案外大変な名寄せ作業で事前にしておくことExcelを使う作業で「名寄せ」を行う作業について説明します。名寄せ作業は弊社でも行っておりますが、実は結構複雑だったりします。基本的には名寄せ対象となるデータの在り方がすべてを左右しますが、簡単だと思っていると足元をすくわれることもあるので注意が必要です。事前チェックの限界トドめはExcelの限界!?名寄せ作業とは名寄せ作業の厳密な定義はわかりませんが、弊社では下記のような作業を「名寄せ」作業として行っております。■2つの表を一つにまとめる上記は表Aと表Bの2つのデータ群を一つにまとめる作業を指しています。■1つの表で重複するデータを一つにまとめる上記は表Aの中で重複するデータを1つにするような作業を指しています。※実際には、2つの表の場合、持っている項目が同一でなく、表A、Bのそれぞれで重なる項目と異なる項目を持っているなどがありますが、通常はこのような表の(データで)重なる項目を比較して、差分を見つけ修正するイメージです。データの持ち方や件数にもよりますが、名寄せ作業ではAccessの(クエリを使う)方が便利です。Accessを使う場合であっても本ページで挙げている注意点は当てはまります。事前準備が精度を大きく左右する名寄せ作業では、事前に各データのチェック及び修正が必要になります。この時点で、このチェックが緩い状態で始めると結果的にやり直しせざる得ない場合が出てくるので注意が必要です。(この手の作業ではExcelの関数で言うと、VLOOKUPやCOUNT、IF関数などが使えますが(比較対象となる)データの精度が悪いと使い物にならない場合もあります)Excel(コンピュータ)が判断できるようにデータを揃えるたとえば、「巨人軍」と「ジャイアンツ」は人が見れば、同一のものを指すことができますが、コンピュータでは文字列が異なるため別物として判断します。ここでいう「データを揃える」というのはこのようなことを指しています。同じ理屈でいくつか例を示すと株式会社と(株)をどちらか統一しておく住所は都道府県から始める電話番号は市外局番から始めるなどです。人の名前なら、姓と名の間の空白をどうするか、生年月日を西暦、和暦のどちらかにするか、などが考えられます。比較対象となる項目については、比較する前にデータを変換しておくと漏れが減ります。(下記でも説明しますが)、その一方でやりすぎると危険な場合もあり、バランスが必要になります。その他よくある点に、カンマ、中点(中黒)、カタカナ表記とひらがな表記、全角と半角の違いがあります。どこまでデータを揃えるか考える上記と相反しますが、データを揃える場合、もともと違うデータだった場合に、名寄せで1つにまとまってしまうことでかえって都合が悪い場合もあります。上記に挙げた画像の表でいうと、たとえばデータを揃える為に「法人格を削除」した場合です。この場合、たとえば「ABC株式会社」と「ABC有限会社」がそれぞれ別会社として存在した場合が該当します。やりすぎると別の問題を引き起こすために気をつける必要があります。上記に挙げた「どこまでデータを揃えるか考える」場合ですが、このようなとき、通常は他の項目も比較対象として「同一か」、「そうでないか」の判断します。社名や人の名前が同じだった場合に、たとえば「社名と住所」、「名前と生年月日」などと複数項目にすることで有効に役立ちます。裏を返すと逆に1つだけでの判断は漏れが含まれている可能性があるということです。社名が変更された場合、これは社名だけで判断すれば別物の会社と見ることができますが、もし住所が同じなら社名変更と見ることもできるからです。事前チェックは限りなく100%の状態にしたうえで名寄せすることが望ましいですが、弊社の経験では現実的にそれは難しいと思われます。「AAA株式会社」は表A、表Bで同じデータと判断できますが、本当にそうでしょうか?もしかしたら、表BのAAA株式会社は入力ミスで本当は「ZZZ株式会社」のデータだった、ということもありえるかもしれません。それならば、比較する項目列を社名だけでなく、住所、TEL・・・その他全項目でチェックすればよいのですが、その場合は各項目間の事前チェックの作業が広がり、この部分で漏れがあった場合を考慮する必要が出てきます。入力されていると(人の判断としては)同じでも、文字が間違えていると一致しません。このように根本を辿ると無限になったりします。このため、実際にはある程度の線引きをして、一定の部分までは入力した内容を信用し、そこで溢れたデータは目視確認というのが現実的な対処法だと思われます。(参考までに実際にあったある企業名1社で、入力ミスとしてなんと25社名分が入力されていました。こちらの社名は文字と文字の間に入っている記号だけでなく、単なる入力ミスもありました)トドめはExcelの限界!?おそらく名寄せで困っている方は、ここに挙げた点に当てはまるところもあるのではないかと思います。冒頭のほうでExcelで名寄せにも活用できる関数を挙げましたが、これまでお話したようにその機能が生かされるのはデータの整合性や精度が確保できるときです。逆に言うとExcelの関数では一言で言えば「正しい」、「正しくない」の2つの答えしか返ってきません。名寄せ作業ではそれでは十分とは言えず「少し違います」とか「かなり同じです」的な回答も必要になることが多いです。このような点を満たすため、弊社ではマクロ(VBA)を使ったプログラムで名寄せ作業もしておりますが、このようにしないと関数やExcel機能だけでは満たされない部分があるというのが弊社のこれまでの経験です。Excelで集計するときに必要となる元データには全幅の信頼が前提です。Excelの関数とは何ぞや・・Excelを使い始めて間もない方への回答を意識しました。Excelの関数だけを使って請求書を作成してみます。Excelの数式、関数は非常に便利で強力な武器ですが、それらには制限事項もあります。Excelを使う人等が戸惑う機能の1つに関数があります。Excelで関数だけを使って宛名の印刷をします。Excelは関数を使うことで作業の効率化やミス軽減になります。VLOOKUP関数はどんな役割があるのか、どんな時に使うのが望ましいのか等を考えてみたいと思います。Excelで関数だけを使って宛名の印刷をします。VLOOKUPでうまくいかないとき、解決が多岐に渡ることがあります。シートの関数や数式を解読、分析するにはExcelの持つ機能を使って対応します。Excelで関数だけを使った進捗表を作ります。!!仕事の効率化のために、Excel関数を学びたいと思ったが、よくある辞典や、テクニック集はレベルが高すぎて理解できない。Excelで集計するときに必要となる元データには全幅の信頼が前提です。Excelの関数とは何ぞや・・Excelを使い始めて間もない方への回答を意識しました。Excelの関数だけを使って請求書を作成してみます。Excelの数式、関数は非常に便利で強力な武器ですが、それらには制限事項もあります。Excelを使う人等が戸惑う機能の1つに関数があります。Excelで関数だけを使って宛名の印刷をします。Excelは関数を使うことで作業の効率化やミス軽減になります。VLOOKUP関数はどんな役割があるのか、どんな時に使うのが望ましいのか等を考えてみたいと思います。Excelで関数だけを使って宛名の印刷をします。VLOOKUPでうまくいかないとき、解決が多岐に渡ることがあります。シートの関数や数式を解読、分析するにはExcelの持つ機能を使って対応します。Excelで関数だけを使った進捗表を作ります。