zoukankan      html  css  js  c++  java
  • NPOI之Excel——自动筛选、数字格式

    设置Excel的自动筛选功能

    最新导出数据需要使用Excel的筛选功能,网上多方查找,终于在一个繁体的网站上找到了方法,呃,这个网站还是Java的,讲的是POI,不过.NET的NPOI也就一样用了。

    CellRangeAddress c = CellRangeAddress.ValueOf("A1");
    sheet.SetAutoFilter(c);

    通过设置要进行自动筛选的单个单元格或者多个单元格,然后在sheet上进行设置自动筛选。

    (参考:http://www.javaworld.com.tw/jute/post/view?bid=11&id=301435

    顺便一起说一个

    单元格数字格式的问题

    NPOI向Excel文件中插入数值时,可能会出现数字当作文本的情况(即左上角有个绿色三角),这样单元格的值就无法参与运算。这是因为在SetCellValue设置单元格值的时候使用了字符串进行赋值,默认被转换成了字符型。如果需要纯数字型的,请向SetCellValue中设置数字型变量。

    以上两个问题的示例代码如下:

    //建立空白工作薄
    IWorkbook workbook = new HSSFWorkbook();
    
    //在工作薄中建立工作表
    ISheet sheet = workbook.CreateSheet();
    
    //填充筛选的内容
    sheet.CreateRow(0).CreateCell(0).SetCellValue("省份");
    sheet.CreateRow(1).CreateCell(0).SetCellValue("河北省");
    sheet.CreateRow(2).CreateCell(0).SetCellValue("湖南省");
    
    //验证数字格式问题
    sheet.GetRow(1).CreateCell(2).SetCellValue("123");
    sheet.GetRow(2).CreateCell(2).SetCellValue(123);
    
    //设置Excel的自动筛选
    CellRangeAddress c = CellRangeAddress.ValueOf("A1");
    sheet.SetAutoFilter(c);
    
    //写文件
    using (FileStream fs = new FileStream("haha.xls", FileMode.Create, FileAccess.Write))
    {
        workbook.Write(fs);
    }

    最终的效果显示:

    QQ截图20130708153031

    更多NPOI相关:http://www.cnblogs.com/xwgli/category/467970.html

     

  • 相关阅读:
    spark 1.1.0 单机与yarn部署
    hadoop 2.5.1单机安装部署伪集群
    perl C/C++ 扩展(五)
    perl C/C++ 扩展(一)
    perl C/C++ 扩展(二)
    perl C/C++ 扩展(三)
    perl C/C++ 扩展(四)
    SpiderMonkey 入门学习(一)
    新装centos 6.5 基本配置
    Linux(16):Shell编程(3)
  • 原文地址:https://www.cnblogs.com/xwgli/p/3178153.html
Copyright © 2011-2022 走看看