2017-06-26 18 views
0

私はEPPlusライブラリを使用してExcelファイルを作成しています。 文字列値を表示する列がありますが、値は日付の数値として処理されています。私は日付としてではなく、文字列として値を取るようにセルをフォーマットしたい。例えばC#EPPlus OpenOfficeXmlセルをフォーマットする

オリジナル値:1171から2、1.1、1.2、1.3
Excelの値:-266229、42736、42767、42795

は、私が使用しています:

excelWorksheet.Cells[row, column].Style.Numberformat.Format = "@"; 

が動作していません。

元の値を表示するには、セルの書式を設定する方法を教えてください。

答えて

0

"@"形式は、数値ではなくテキストとして値を扱うようにExcelに指示します。

あなたのコードを見ることなく、私はあなたが示してきたようにExcelが自分の価値観を転換されるだろう、なぜに、ので、ここでセルの書式を設定するためのコードサンプルがありますように行くには何もありません:

 using (var xlsx = File.Create("Text.xlsx")) 
     using (var pkg = new ExcelPackage()) 
     { 
      var ws = pkg.Workbook.Worksheets.Add("Sheet1"); 
      var r = 0; 
      ws.Cells[++r, 1].Value = "Values"; 
      ws.Cells[++r, 1].Value = 1171.2; 
      ws.Cells[++r, 1].Value = 1.1; 
      ws.Cells[++r, 1].Value = 1.2; 
      ws.Cells[++r, 1].Value = 1.3; 
      ws.Column(1).Style.Numberformat.Format = "General"; // Default 
      //ws.Column(1).Style.Numberformat.Format = "0.00"; // Numeric with fixed decimals 
      //ws.Column(1).Style.Numberformat.Format = "@";  // Text 
      pkg.SaveAs(xlsx); 
     } 
関連する問題