- ベストアンサー
エクセルで上2桁をカットして表示するには
エクセルの数値の表示で 上何桁かをカットして表示する方法はありますでしょうか? 例えば 123456 を 3456 と表示させるようなものです。 書式設定でも関数を使ってでも、どのような方法でもかまいません。 ただ、関数のRIGHTを使って逆から桁を数える方法ではないものが知りたいので、よろしくお願いします。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
=MID("123456",3,LEN("123456")-2) はどうですか?
その他の回答 (7)
- zap35
- ベストアンサー率44% (1383/3079)
RIGHT関数がなぜダメなのか分かりませんが、LEFT、MIDも敬遠したいですか? =MOD(A1,10^(LEN(A1)-2)) ではいかがでしょう?
お礼
ご回答ありがとうございます。 RIGHTがダメな理由は前のかたのコメントに書いた通りです。 弱い理由でスミマセン。 今回の作業ではいろんなパターンの数値(もはや文字列)が出てきてしまったため 教えていただいた数式では対応できなかったのですが 次回の仕事の参考にさせていただきます。 ありがとうございました。
- wisemac21
- ベストアンサー率39% (171/429)
失礼しました。Rightはご法度でしたね。 替わりに =VALUE(SUBSTITUTE(A1,LEFT(A1,2),""))
お礼
ご回答ありがとうございます。 RIGTがダメな理由は、桁数が様々であったので 単に下から数えて3456の4桁を表示すればいいだけ という解釈をされてしまうのを防ぎたかったのですが 初めにいただいた数式もRIGTを含んでいても 意図を汲んでいただけていたので どちらも参考にさせていただきたいと思います。 ありがとうございました。
- wisemac21
- ベストアンサー率39% (171/429)
=VALUE(RIGHT(A1,LEN(A1)-2))
123456-->_3456 123----->_0123 -1234--->-1234 ×=MOD(A1, 10000) ○=MOD(A3,10000*SIGN(A3))
お礼
ご回答ありがとうございます。 今回の作業では数値の桁数がまちまちであることと データ量が大量だったためそれぞれにあわせて数式を手直しするのが難しいこともあり 次回の仕事に応用したいと思います。 ありがとうございました。
- nobu555
- ベストアンサー率45% (158/345)
整数限定ですが、こんなのもありですか =A1-ROUNDDOWN(A1,2-LEN(A1))
お礼
早速のご回答ありがとうございます。 なるほど、こういうやり方もありですね。 今回の作業では普通の数値ではなくハイフン付きのもの等が混ざっていたことが解ったため 次回の別の仕事のときに使ってみたいと思います。 ありがとうございました。
- SUPERS
- ベストアンサー率42% (26/61)
=(A1/10^(LEN(TEXT(A1,"##########"))-2)-INT(A1/10^(LEN(TEXT(A1,"##########"))-2)))*10^(LEN(TEXT(A1,"##########"))-2) は、いかがでしょうか? 数値で計算で出しています。 上記のA1は、セル座標ですからいろんな応用がききます。
お礼
早速のご回答ありがとうございます。 正直、理解するのにちょっと時間がかかりました。 さすがに詳しいかたはスゴイです。 他の人に作業を振るときのことを考え、今回は簡単な方法を選ぼうかと思いますが いろんな応用ができるということなので 使いこなせるようにしたいと思います。 ありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
A1にある数値だと =MOD(A1,10^INT(LOG(A1)-1))
お礼
早速のご回答ありがとうございます。 作業を進める中で、対象の数値が様々であることが解り 教えていただいた数式では対応できない部分もありましたが 今後の仕事に生かしたいと思います。 ありがとうございました。
お礼
早速のご回答ありがとうございました。 今回、私がする作業では、ハイフン付きの数値や0から始まる数値が混ざっていたので それらにも対応でき、そのうえシンプルで人にも説明しやすいので助かりました。