プロが教えるわが家の防犯対策術!

①ダウンロードしたcsvファイルをExcelで保存。
②データの重複を見つける。
こういった作業は、プログラミングで自動化できると思いますか?

名刺管理ソフトeightを導入しました。
導入したは良いものの、過去10年間約8000枚の名刺をスキャンしたことから、中には同じ人の名刺が複数枚登録されております。
この重複データを削除して、登録データを少しでもスッキリさせたいです(おそらく6000枚位には減る)。

今やっている作業は、
①登録された全名刺データをダウンロードし
②上から順に重複データがないかを探し、
③見つけたらeightにログイン。名前検索をし、1つ1つデータ削除
といったやり方です。正直途方に暮れています。

しかし、作業としてはご覧のとおりルーチンワークです。
詳しい方法などはさておき、自動化できるのではと頭に浮かんでいるのですが、どう思いますか?
当方プログラミング初心者で、「この言語なら」「これとこの関数を組み合わせて」などまでの発想には行きつかないレベルです。

A 回答 (3件)

例えばですが


Excelをこの様につかたり
https://dekiru.net/article/15288/
Webアプリ(データ損失など信頼性不明。デスクトップで行うのが安心かな。)で重複行を削除するのが良いのではないでしょうか?
http://pia.skr.jp/app/sort.html
http://pia.skr.jp/app/redupli.html
ただ、実際には電話番号が異なるなどでしょうから、まず、A列に空白を開けて1から8000まで番号を振り、B列(ここが名前なら)でソート
B列のところには同じ名前が並びますので適当な関数で重複行のみを強調。同性同名もあるでしょうから手作業で削除かな。
いないのが確実なら、A列を第二ソートで昇順にして若い方の番号を機会的に削除かな。
ちょっと文章では伝わりにくいです。1行目のURLを参考にちょっと独自で考えてみるのが良いと思います。
あと、新規で追加した場合にはVLOOKUPあたりで判定させると楽かもしれません。
VBAが使えないし独自関数は動作がわからなくなりそうなので個人的には外部プログラムや独自関数は使わず可能な限りシンプルにしています。
    • good
    • 0

私ならcsvをエクセルで保存しないでAWKでプログラム書いて処理するかな。


もちろんExcelのマクロとかVBA使ってもできるとは思うので、ご自分の得意な分野でどうぞ。
いずれにしてもプログラマ的発想が無いと難しいかなとは思います。
    • good
    • 0

CSVファイルがどのような内容になっているのか分かりませんが


例えば名前のデータが含まれているなら
その重複をチェックして抽出する程度でしたら簡単に出来ます
同姓同名を考慮して会社名などで二重チェックしたほうが良いかもしれませんね

CSVファイルの操作はExcelでやるのが一般的なので
VBAというプログラミング言語を使うと良いでしょう
    • good
    • 1
この回答へのお礼

ありがとうございます!
たしかにそうですね…。同一人物なのに、ローマ字表記と漢字表記で登録されている人も多数いるので、会社名でソートかけることも必要だと思います。
※こういった方の場合、会社そのものが別なので、表記も変えていることがあったりするのですが・・・

同じ作業をAIやVBAに特化した方ならどんな方法をとるかなと、昼休み中も考えていました。

お礼日時:2019/01/29 13:01

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