• ベストアンサー

エクセルでセルの書式のユーザー定義で

1000と入れたら1,000万円と表示させるには #,###"万円"だと思いますが、こうやると753.5と入れると754万円になってしまいます。 #,###.#"万円"としたらいいかと思いましたら、今度は小数がない753の場合でも、753.万円と.が残ってしまいます。 整数なら小数点がでなくて、小数をいれたらちゃんと表示されるようにするには書式をどう設定すればいいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.6

簡単な方法 指定範囲のセルに定義で名前を付けます。 仮に「指定範囲」という名前の場合 Private Sub Worksheet_Change(ByVal Target As Range) Set Target = Application.Intersect(Range("指定範囲"), Target) If Target Is Nothing Then Exit Sub ' 指定範囲外を無視する If Target.Count > 2 Then Exit Sub ' 複数セル変更(クリア等)無視 If Target <> Int(Target) Then Target.NumberFormatLocal = "##,###.???万円" Else Target.NumberFormatLocal = "##,###万円" End If End Sub

max_min
質問者

お礼

ありがとうございます。 完璧です!!

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (6)

noname#148473
noname#148473
回答No.7

どうしても1つのセル内に「???.?万円」と表示させなければならないのでしょうか?数値を表示するセルと、単位(万円)を別にしてしまえば、あっさり解決しちゃいますよ。 たとえば、セルA1に「633.5」と入れて(書式は標準)、セルB1に「万円」と入れる。そのままだとA1とB1の間に薄い線が見えますので、セルA1とB1の背景に色をつける(セルの書式設定→パターンで選ぶ。「色なし」以外なら何でも可)これで済みます。 もし、金額が入力されていない場合に「万円」の表示を消したい場合は、セルB1に =IF(ISBLANK(A1),"","万円") とすれば良いです。 金額=0の場合も「万円」の表示を消したいならば、セルB1に =IF(A1=0,"","万円") でOKです。 この方法ではNGでしょうか?

max_min
質問者

お礼

ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

VBAでやってみました。一番ご希望に近いかと思います。「万円」をつけるなら"##,###.???"-->"##,###.???万円"としてください。 小数点以下は3桁までと仮定した例。 下記VBAの動かし方が判らなければ補足します。 Private Sub Worksheet_Change(ByVal Target As Range) If Target <> Int(Target) Then Target.NumberFormatLocal = "##,###.???" Else Target.NumberFormatLocal = "##,### " End If End Sub 欠点は (1)123.0といれても123となります。 (2)少数と整数が微妙に極く僅か揃わない。

max_min
質問者

補足

おお!まさにこれです! ありがとうございます。 ただ、このやり方だとそのシート全体にこの設定がかかってしまい、表以外のセルに文字列を入力するとエラーになります。 この書式設定をしたいのはセルの C4:E8、C16:E18、H4:K4の部分だけなのですが、そういう指定は出来鱒ますでしょうか?

全文を見る
すると、全ての回答が全文表示されます。
  • naosan1229
  • ベストアンサー率70% (988/1406)
回答No.4

書式設定で @"万円" ではいかがでしょうか? 表示上では753.5万円にも753万円にもなります。 しかしながら、文字として認識するため、計算には使えませんが・・・。

max_min
質問者

お礼

ありがとうございます。 せっかくのご回答ですが、エクセルの表ですから計算に使えないとなるとちょっと無理です。

全文を見る
すると、全ての回答が全文表示されます。
  • kmb01
  • ベストアンサー率45% (63/138)
回答No.3

そのような書式を指定することはできないと思います。 #,###.0として753.0万円で我慢するのが一番かと。 どうしても実現したいのであればおそらく書式ではできないので、 入力用マクロで入力毎に書式を設定する。 シート全体の内容を調べて書式を設定するマクロを作る。 入力用シートと表示、印刷用シートを別にする。 等の手段で無理やりということになると思います。

max_min
質問者

お礼

ありがとうございます。 難しいそうですね。

全文を見る
すると、全ての回答が全文表示されます。
noname#113407
noname#113407
回答No.2

ユーザー定義で『通貨』をクリックして「少数点表示桁上げ」(0)や矢印のアイコンを一回押し1にしてそのまま入力されるとうまく行くと思いますが。

max_min
質問者

補足

ありがとうございます。 『通貨』を選択すると、¥マークがついてしまい、万円の表示が消えてしまいます。

全文を見る
すると、全ての回答が全文表示されます。
  • santa9
  • ベストアンサー率15% (2/13)
回答No.1

表示→ツールバー で「書式設定」を追加します。 そこでツールバーに表示された「少数点表示桁上げ」(0や矢印のついたアイコン)を一回だけ押して、少数点第一位まで表示させるようにすればよろしいのでは?? この方法しか分かりません・・・ が、表示に問題はないようです(^^;)

max_min
質問者

補足

ありがとうございます。 「少数点表示桁上げ」で少数点第一位まで表示させるようにすると、整数をいれても 73.0のように小数第一位まで常にでてしまうんです。 それを防ぎたいのです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのセルの書式設定→ユーザー定義

    エクセルで数値を打ち込む単純作業をしています。 小数点以下1桁表示まで入力しているのですが、小数点を省いて入力する事は出来ませんか? 例えば、1.2を表したいのであれば、12と打って1.2と表示させたいです。 セルの書式設定→ユーザー定義で出来そうなのですが、設定の仕方がわかりません。 これって可能ですか? またその表で平均値やグラフを表したいのですが、きちんと反映されますか? よろしくお願いします。

  • セルの書式設定で12,345.6人と12,345人の両立は?

    エクセル2000です。 セルの表示の書式設定で、例えば計算結果が 12345なら12,345人 12345.6なら12,345.6人 12345.67なら12,345.67人 と表示し、セルは数値のままにしておきたいのです。 セルの書式設定で、G/標準"人" とすると、整数と小数点についてはそのようになりますが、桁区切りのカンマは出せません。 カンマを出すために、#,###.##"人"とすると、整数値の場合、12,345.人と、不要な小数点がでてしまいます。 どうしたらよいのでしょう?

  • エクセル0.0の書式

    小数点第一位まで表示し、ゼロの場合は非表示したいのですが、そのような書式設定はできますか? 書式を#.# にすると0の場合、小数点の点「.」のみ表示されてしまいます。

  • エクセル書式のユーザー定義

    エクセルの書式のユーザー定義は例えば0.00であれば数値で小数点以下を2桁に設定したものと全く同じなのでしょうか?ユーザー定義とは数値や日付などの書式設定を更にユーザー好みにしたい時に使うものという認識でよいのでしょうか。

  • エクセル2000 セルの書式設定について

    教えてください セル内の書き込みに後ろに半角スペースを入れたかったのでセルの書式設定を下記のように設定しました G/標準" ";G/標準" ";G/標準" ";@" " で、うまくいったようなのですが実は数字を入れても 文字として認識しているのか、全く計算などはできなくなりました。どのような解決方法があるのでしょうか。 ちなみにセルに入るものは整数、小数、文字ですが 整数は.0などは表示したくなく、小数は打ったままの数字を表示したいと思っています。

  • エクセル セルの表示形式のユーザー定義について

    セルの表示形式で、ユーザー定義に使用できる記号について説明しているページです。 http://support.microsoft.com/kb/883199/ja#top こちらのページの「数値の書式記号」の説明部分で質問します。 この「数値の書式記号」で、エクセルの画像を使用して説明がされています。 下のほうに「桁を揃えて表示」とあります。 ばらばらの小数点以下の見栄えを揃えることができるのがわかりました。 が、ここで更に「整数」も入力したい思っています。 この「ユーザー定義」のままだと「1234.」と、小数”点”が、余計にくっついてきます。 「1234」と表示したいです。 なにか条件をつけるのか? それともユーザー定義ではできないのか? ご存知の方がいらっしゃいましたら、お教えください。

  • エクセルのセルの書式のユーザー定義について

    今私はエクセル2003の勉強をしています。 エクセルの 書式→セルで出てくるセルの書式設定ダイアログボックスで、 ユーザー定義というのがありますよね。 それの#や0の数値に関する書式記号の意味がわかりません。 たとえば、#は、 有効桁数を表示し、余分な0を表示しない と私が今勉強しているテキストには書いてあるのですが、 これは一体どういう意味なのでしょうか? ##とあれば有効桁が2桁ということだから、 12345という数があれば、12というふうに表示されるということでしょうか? また、余分な0を表示しないということは、 ##なら、1200は12ということになるのでしょうか? また、0の意味もわかりません。 テキストには、#,###.00の場合、1234.5→1,234.50という風に表示されると書いてあるのですが、1235.00って表示されるのではいのですか? まったくわからないので、 なるべくたくさんの具体例を用いて、 #や0、あとカンマ、やピリオドの書式記号について 教えてくださると嬉しいです。 文章をあまりうまくかけないので、 質問内容がなんなのかよくわからなかったらすみません。 よろしくお願いします。

  • ACCESS 書式設定

    書式設定で0.0とすれば、整数でも小数点を表示できますが、 例 1→1.0 空白が0と表示されてしまいます。 空白を0と表示せずに1を1.0などと表示を変えられないでしょうか?

  • Excelでのセルの書式設定「ユーザー定義の表示形式」での0と#の違い

    MOUS試験を受けるため、2冊の問題集を購入し勉強しているのですが、 どうしても分からない事があります。どうか教えてください。 Excelでのセルの書式設定「ユーザー定義」で、 例えば、「1008.7」というデータを「1008.7万円」と表示させたいとき、 テキストの解答は「#,##0.0"万円"」となっています。 これは、「#,###.#"万円"」や「#,###0"万円"」では不正解なのでしょうか? また、 「0.12345」を小数点以下第3位まで表示し、4位以下を四捨五入するには 「#.###」「0.000」のどちらが正解なのでしょうか? お分かりになる方がいらっしゃいましたら、#と0の違いについてどうか詳しく教えてください。 また、同じ「ユーザ定義の書式設定」で「条件付きの表示形式」に関する解答がFOM出版のものだと [>=5000][青]0.00;[<2000][赤]0.00;[黒]0.00 となっていて、日経BPのものだと [青][>=5000]0.00;[赤][<2000]0.00;[黒]0.00 と色と条件を逆にしないと不正解になってしまいます。 これはどちらでも本試験では正解になるのでしょうか? 宜しくお願い致します。

  • Excelのセルの書式設定について

    Excelで車の燃費をつけています。今はセルの書式設定で小数点2桁目までを表示していますが、1リットル15km以上走行できたときはセルの色を赤色にするというのをユーザー定義で入れましたが、それを入れると、小数点2桁目というのが有効になっていません。両方を有効にする方法を教えて下さい。

このQ&Aのポイント
  • EW-052AのChromebook用ドライバーは存在するのでしょうか?
  • ChromebookでEW-052Aを使用する際には、適切なドライバーのインストールが必要ですか?
  • EPSONのEW-052AをChromebookで利用するためには、ドライバーの準備が必要なのか教えてください。
回答を見る

専門家に質問してみよう