2012-04-26 4 views
0

いくつかのフィールドをC#のExcelシートにエクスポートしています。 1つの列を除くすべてが正しく来ていますが、その列には値0を0.00形式にエクスポートする必要があります。C#でExcelシートの列番号形式を動的に変換する方法は?

私のコードビハインドコードが実行されているとき、私はstringBuilderオブジェクトに値を0.00フォーマットとして追加していますが、エクスポートしたドキュメントを開いたときに値が0であることがわかりました。タイプ12.3323を選択して番号書式を変更します。

私はこのようにしたくありません。私は、C#コードビハインドファイルで列番号のフォーマットを動的に定義したいと考えています。

どうすればいいですか?あなたが知っているなら私に示唆してください。

+0

どのようにエクスポートしていますか? Excel .NETライブラリを使用していますか?他の図書館?または単にCSVまたはHTMLのエクスポート? – mafafu

+0

0と0.0と0.00が同じ値であることに注意する必要があります。値と形式は2つの異なるものです。私の印象は、別の値(同じ値になる)を選択してフォーマットを定義しようとすることです。しかし、私はdot.netでExcel形式を定義する方法を知らない。 –

答えて

0

C#は正しいと思います。問題は、そのように表示するためにExcelで「列形式」を指定する必要があることです。フォーマットマスクを追加するだけです。

+1

私はコードで行うことができる別の方法を与えるように頼んだ、あなたの答えはあなたの返信のために私の要件のおかげで一致しません – suresh

0

セルに書き込むときに、書式機能を使用して値を変換することができます。 ように:

Format(Convert.ToDouble(data.ToString()), "0.00") 
+0

私はセルにのみ正しい値を挿入していますが、デフォルトのフォーマットでは、C# – suresh

+0

のセル番号フォーマットを動的に与えたいのですが、セルにデータを挿入するときに、データのタイプをFloatに設定しましたか? xmlで書いている場合は Finisher001

+0

ここにサンプルコードを投稿してくださいあなたの問題について正確な考えを得ることができる – Finisher001

0

あなたが使用することができますRange.NumberFormat = "0.00"(事務所のドイツ語版のために)(英語版)または"0,00"。例: ws.get_Range("A1", "C2").NumberFormat = "0.00";

関連する問題