- ベストアンサー
【Excel】セルの書式設定について
こんにちは。 Excelの操作について質問があります。 たとえば1000500をセルに入力して 表示形式でユーザー定義で「#,##0,_);(#,##0,)」 と入力すると1,001となり千円単位になりますが 千円単位にする際に切り捨てにしたいのです。 できるのかわかりませんがなにか方法があったら教えてほしいです。 その際1000500という数字はセルに直接入力したいので 切り捨て処理をした後の数字は使いたくないのです。 稚拙な文章で申し訳ないですがよろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
エクセルは、セルにセルの「値」というものがあります。 表示形式の書式もあります。 その「値」を尊重したカタチで表示形式の結果は出ます。 表示形式で値の加工!ー>そのセルの表示形式での表示の機能はエクセルにありません。 少し勉強すればわかります。 唯一の例外が「###、」で1000分の1で未満は四捨五入のようなことをします。 この点表示形式で、演算までさせてくれればよいと思うが、エクセルの大原則を逸脱するようにも思う。 日付書式だけは、値は正整数なのだが年月日など、設定によりさまざまに出ますが、値ー>書式結果は対応関係で出してます。 ーー >その際1000500という数字はセルに直接入力したいので 切り捨て処理をした後の数字は使いたくないのです。 希望を言うのは良いが、エクセル概説書に載ってない機能は、隠し技をあるかと思って質問しても、妙案はとんどありません。 ーー 別列に関数で望みの「値」を作って、算出後のセルを対象に表示形式を設定するほかありません。 VBAならイベントで入力値を引き取って加工し、元へ戻せると思うが 不安定で大げさな気がします。 Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Target = Application.WorksheetFunction.RoundDown(Target, -3) Application.EnableEvents = True End Sub 余りテストしてませんし、難しい問題を抱えているので勧めません。
お礼
ありがとうございました。難しいということですね。