- ベストアンサー
EXCELの桁数の変更を教えてください。
顧客情報を2つのシートで管理しており、一つのシートのみに、 顧客番号をふっているので、もう一つのシートにも、その顧客番号をvlookupでひっぱろうとしたのですが、電話番号の下1桁が違っていたりして、マッチングができませんでした。 で、マッチングをさせるために、下2桁を切り落とし、桁数を変えることはかのうでしょうか。電話番号の下2けたを落としてvlookで引っ張れば、適合するものが多くなるように思います。 たとえば、0120-12-1234とかりに番号があった場合、ハイフンをトリムして、120121234とおきかえて、下ふたけたをきりおとして、1201212と9ケタから7桁の数字にする方法です。 よろしくお願いいたします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
INT関数を使えばどうでしょうか? ハイフンを除いた9桁のデータの横に作業するための行を作ります。(このセルを仮にH列とします。) 次に 隣のIセルに=INT(H1/100) としてオートフィル機能でドラッグしていけば、下二桁が切り取られた7桁の数字が表示されると思いますが・・・
その他の回答 (5)
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
完全一致しないもののみ別の列で桁を切り落として検索してはどうですか? =MATCH("0120-1234-56??",C:C,0) のように検索できます ついでにHyperlink関数を使うと検索された先にジャンプもできますね
- gyouda1114
- ベストアンサー率37% (499/1320)
>電話番号の下2けたを落としてvlookで引っ張れば 余計なお世話かも知れませんが 顧客情報を2つのシートには、共通項目として顧客名があるのでは 電話番号ではなく顧客名を使った方がいいような気がしますが
補足
回答ありがとうございます。 確かに、顧客名(法人及び、個人)で引っ張るのが一番なのですが、 別々の時期、人によって、作られたもので 短い会社名が一方では漢字表記、一方ではひらがな表記であったり、 会社名の中で、スペースが異なって入っていたり、 株式会社の表記が、異なっていったりと、数千件あるデータの中で きっちりとマッチするものが少なく、 考えた末、マッチングする確率が高いのが、電話番号切り落としなのかなっと思いました。
- BrueBreeze
- ベストアンサー率52% (83/159)
> ハイフンをトリムして、120121234とおきかえて、下ふたけたをきりおとして、1201212と9ケタから7桁の数字にする方法です。 ハイフンを取り去るなら、SUBSTITUTE(電話番号,"-","") 文字列の下二桁を取り去るなら、left(文字列、len(文字列)-2) 文字列を数値データとして扱うならvalue(文字列) 全部まとめると VALUE(LEFT(SUBSTITUTE(電話番号,"-",""),LEN(SUBSTITUTE(電話番号,"-",""))-2)) なのですが、 一番の目的である「顧客番号を引っ張る」に使えるかどうかはやってみないとなんとも… > 適合するものが"多くなる"ように思います。 との言葉なので、そういったことは御質問者さんもお分かりだと思いますが。 本来は顧客番号が先にあって、顧客情報を引っ張るのに使うわけで、その逆をやるので一つの方法ではなかなか難しいと思います。 データが何件あるかはわかりませんが、手を変え品を変えいろいろと試してみて、できたものから決めていって、最終的には目で見て確認ってところでしょうか
お礼
ありがとうございます! 明日、会社でやってみます。 どうもありがとうございました!!
- chiezo2005
- ベストアンサー率41% (634/1537)
ハイフンをトリムするのは関数でやるよりメニューから置換を選んでハイフンを無文字に置換してしまったほうが早いです。 のこりの数字の桁を減らすのはLEFT関数を使うとできます・・・が、 桁数を落としてヒットしたからと言って確実ではありません。 別の顧客が下二桁だけ異なる番号を持っている可能性もありますので、 このやり方は絶対にお進めしません。 顧客情報なのでこの方法をつかって間違った場合には致命的です。 そんな偶然は起こるわけがないと思っていると必ず起こります。 きちんと全桁でマッチングさせて、うまくできなかったところを 手で修正するのがよいと思います。
- Cupper
- ベストアンサー率32% (2123/6444)
それが目的に合っているかは別として 普通に文字情報として LEFT関数や MID関数、REPLACE関数などを利用してはいかがですか または数字として扱いたいのでれば桁指定の関数、たとえばROUNDDOWN関数ではいかがでしょう
お礼
ありがとうございます。 この方法だと簡単に桁数が変更できますね! とても便利です!! 大変ありがとうございました!