2017-07-26 12 views
0

私はExcelを作成しています。 -19、しかし、それをクリックすると、それを日付としてフォーマットしようとします。C#NPOIのセルスタイルをテキスト/文字列に設定します。1-19は書式設定の日付/書式設定を無効にします。

シートに式や書式を使わないように強制する方法はありますか? 私はチェックして、データフォーマットは文字列です。

private void Test1(ref ISheet worksheet, string[] array, IWorkbook workbook, int iRow, XSSFFont font2) 
     { 
      var format = HSSFDataFormat.GetBuiltinFormats(); 

      ICellStyle _TextCellStyle = workbook.CreateCellStyle(); 
      _TextCellStyle.DataFormat = workbook.CreateDataFormat().GetFormat("@"); 
      IRow file = worksheet.CreateRow(iRow); 
      int iCol = 0; 
      for (int y = 0; y < array.Length; y++) 
      { 
       ICellStyle style = workbook.CreateCellStyle(); 

       style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Grey25Percent.Index; 
       //style.DataFormat = HSSFDataFormat. 
       ICell cell = file.CreateCell(iCol, CellType.String); 
       cell.SetCellValue(array[y]); 
       style.SetFont(font2); 
       // cell.CellStyle = style; 
       var getst = cell.CellType; 
       cell.CellStyle = _TextCellStyle; 
       iCol++; 
       getst = cell.CellType; 

      } 

     } 
+0

ようなファイルデータのためにこれらの

_TextCellStyle.DataFormat = workbook.CreateDataFormat().GetFormat("text"); //Instead of "@" 

またはプレフィックス単一引用符のいずれかを試すことができます。自動的にエラーをチェックするのはExcelです。セルに日付が入っていると思う!あなたはあなたの1-19の前に置く方がいいです.... – user3454439

答えて

1

ドキュメントごとに正しい書式文字列 "@"を使用しても、データは「一般」形式のままです。いくつかのタイムライブラリメソッドはNPOIでは動作しませんので、異なるアプローチを試みる必要があります。

エクセルのためにそれを書くときには、私はそれが問題を書式設定されたとは思わない「1-19

+0

魅力的なように働いた –

関連する問題