- PR -

数値書式指定で符号(プラス)を表示したいのですが

1
投稿者投稿内容
たけだ
会議室デビュー日: 2007/10/06
投稿数: 2
投稿日時: 2007-10-06 15:26
初めて投稿いたします。たけだと申します。

VB.NETで、Format関数などで数値書式指定文字列を使って、
符号(プラス)を付けたいのですが、
どのような数値書式指定文字列を使ったらよいかわかりません。

具体例をいいますと、
値が100のときは「+100」としたいのです。

MSDNライブラリを参照しても符号のことは触れられていません。。。
不可能なのでしょうか?
それとも何か技をご存知の方はいらっしゃらないでしょうか?

自分で関数を作ったらよいとお思いかもしれませんが、
あるところから拾ってきた部品のプロパティに、「NumberFormat」というのが
ありまして、これに数値書式指定文字列をセットすれば、
この部品の数値表示を自由に変えられるという機能を
使いたい(使うしかない)ので、困っている次第です。

以上、よろしくお願いいたします。

さんぽ
会議室デビュー日: 2007/06/20
投稿数: 3
投稿日時: 2007-10-06 17:40
カスタム数値書式指定文字列のセクション区切り記号(を使用してできないでしょうか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-06 17:56
さんぽさんの投稿どおりで、

コード:

    Dim i As Integer = 2048
    String.Format(i, "+#,##0;-#,##0")


などとすればよいです。 セクション区切り記号 ";" をつけると、左側から正の数、負の数、値がゼロの場合で切り分けることができます。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
みなやん
会議室デビュー日: 2004/03/30
投稿数: 11
お住まい・勤務地: 東京都中野区
投稿日時: 2007-10-06 18:06
はじめまして。
みながわと申します。

マイクロソフトのサイトに、参考になりそうな情報がありました。
下記のURLをご覧ください。
http://msdn2.microsoft.com/ja-jp/library/1kaxff4d(VS.80).aspx

この方法ですと、数値が”正の数”、”負の数”、”ゼロ”の3パターンの
それぞれの書式指定ができるようです。

動作確認はしていませんが
ご質問の符号(プラス)をつける場合は、
リテラル記号を付ければ可能です。

例)正の数は”+”を付ける、負の数は”−”を付ける、ゼロは”Zero”
"+#,##0;-#,##0;\Z\e\r\o"

お試しください。
たけだ
会議室デビュー日: 2007/10/06
投稿数: 2
投稿日時: 2007-10-07 11:54
たけだです。

大変親切なご返答いただきありがとうございます。

おっしゃる方法でうまくできました!

どうもありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)