2017-08-21 9 views
0

こんにちはグリッドビューのデータをExcelにインポートしたいのですが、Gridviewのデータは "00、02、04"ですが、データが "0、2、4"私はそれをしないでください、私は私のデータをExcelで同じようにGridview.Andと同じように、新しい列に行を移動するには、私は160行のデータを持っている、私はExcelの3列に分割したい、1列は40行を持っています。この私のコード:数値形式とテーブル行を使用してExcelにC#Gridview

private void exToExcel() 
    { 
     if (RekapdataGridView.Rows.Count > 0) 
     { 
      Microsoft.Office.Interop.Excel.Application XcelApp = new Microsoft.Office.Interop.Excel.Application(); 
      XcelApp.Application.Workbooks.Add(Type.Missing); 
      //XcelApp.Cells[5,2].NumberFormat = "00"; 
      XcelApp.Cells[1, 1] = "Tanggal"; 
      XcelApp.Cells[1, 2] = labelTglRekap.Text; 
      XcelApp.Cells[2, 1] = "Kode Pemain"; 
      XcelApp.Cells[2, 2] = labelKodePemain.Text; 
      XcelApp.Cells[4, 1] = "No"; 
      int x = RekapdataGridView.RowCount; 
      for (int y = 1; y <= RekapdataGridView.RowCount; y++) 
      { 
       XcelApp.Cells[4+y, 1] = y; 
      } 

      for (int i = 2; i < RekapdataGridView.Columns.Count + 2; i++) 
      { 
       XcelApp.Cells[4, i] = RekapdataGridView.Columns[i - 2].HeaderText; 
      } 

      for (int i = 0; i < RekapdataGridView.Rows.Count; i++) 
      { 
       for (int j = 0; j < RekapdataGridView.Columns.Count; j++) 
       { 
        XcelApp.Cells[i + 5, j + 2] =string.Format("{0:00}", RekapdataGridView.Rows[i].Cells[j].Value); 
       } 
      } 
      XcelApp.Columns.AutoFit(); 

      XcelApp.Visible = true; 
     } 
    } 

これはExcelで私のデータである。

enter image description here

私は私のデータは、この画像のように示すことができますしたい: enter image description here

申し訳ありませんが、私の英語が悪い場合には、私は誰かが私を助けることを願っています

答えて

0

あなたはほぼ

XcelApp.Cells[5,2].NumberFormat = "00"; 

だけでセルの書式ではなく、数の「テキスト」ことになります

XcelApp.Cells[5,2].NumberFormat = "@"; 

に変更して、それを持っていました。 Excelは常に私の経験から数値を単純化しようとします。

あなたが書き込んでいるすべてのセルにそれをすることを忘れないでください。

希望すると便利です。

+0

すべての行の値は00:00 – TomiTeruz

+0

です。string.Format( "'{0}"、...);で文字列形式を修正しました。 – TomiTeruz

+0

最後にソートされているとうれしいです:) – Numli

関連する問題