none
NPIO Excel cell width problem RRS feed

  • 問題

  • 我想問的是利用 NPIO Lib 存成xls後欄寬的問題

    有辦法讓excel的欄寬可以隨資料的長度變寬或變窄嗎?

    2011年8月18日 上午 02:51

解答

  • 用sheet的AutoSizeColumn方法

      private void button1_Click(object sender, EventArgs e)
      {
    
       HSSFWorkbook workbook = new HSSFWorkbook();
       HSSFSheet sheet1 = (HSSFSheet)workbook.CreateSheet("TEST");
       HSSFRow row = (HSSFRow)sheet1.CreateRow(0);
    
       
    
       for (int i = 0; i < 10; i++)
       {
    
         HSSFCell cell = (HSSFCell)row.CreateCell(i);
         cell.SetCellValue(i.ToString()+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
    
         sheet1.AutoSizeColumn(i);
       }
    
    
       FileStream file = new FileStream(@"E:\test.xls", FileMode.Create);
       workbook.Write(file);
       file.Close();
    
      }
    
    

     


    Shadowと愉快なコード達

    • 已標示為解答 Lucas927 2011年8月18日 下午 01:32
    2011年8月18日 上午 03:33

所有回覆

  • 用sheet的AutoSizeColumn方法

      private void button1_Click(object sender, EventArgs e)
      {
    
       HSSFWorkbook workbook = new HSSFWorkbook();
       HSSFSheet sheet1 = (HSSFSheet)workbook.CreateSheet("TEST");
       HSSFRow row = (HSSFRow)sheet1.CreateRow(0);
    
       
    
       for (int i = 0; i < 10; i++)
       {
    
         HSSFCell cell = (HSSFCell)row.CreateCell(i);
         cell.SetCellValue(i.ToString()+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
    
         sheet1.AutoSizeColumn(i);
       }
    
    
       FileStream file = new FileStream(@"E:\test.xls", FileMode.Create);
       workbook.Write(file);
       file.Close();
    
      }
    
    

     


    Shadowと愉快なコード達

    • 已標示為解答 Lucas927 2011年8月18日 下午 01:32
    2011年8月18日 上午 03:33
  • 只可惜 NPOI 無法突破65535 行的限制,否則我就會用它了。
    2011年8月19日 上午 05:06