zoukankan      html  css  js  c++  java
  • java利用poi包 为excel生成超链接

    转载自:http://www.blogjava.net/leekiang/archive/2008/10/21/235794.html

     
    1,
    一个需求, 要求报表生成的Excel表格支持超链接。例如点击Excel内的公司名, 自动打开浏览器并连到该公司的网站上去。在Excel里面选中所需的单元格, 右键弹出属性, 选超链接就能输入相应的地址了,既然Excel支持超链接。那就没有什么借口说不能实现了。:).

    翻了翻POI的文档, 很容易就找到了解决方案。在POI中让单元格实现超链接功能, 可以用Hyperlink 函数。HYPERLINK函数包含两个参数,第一个参数是指向的地址,第二个参数是显示的字符串

    cell = row.createCell(colNumber)。
    cell.setCellType(HSSFCell.CELL_TYPE_FORMULA);
    cell.setCellFormula("HYPERLINK("" + "Http://www.google.ca"+ "","" + "Google Canada"+ "")");
    或cell.setCellFormula("HYPERLINK("[workbook.xls]'sheet2'!A1","homepage")"); //HYPERLINK("#明细!A1","homepage"),#代表本工作簿,来源http://club.excelhome.net/thread-54081-1-1.html

    现在超链接单元格看起来和一般的单元格没有分别, 除非你把鼠标放上去才会变成手行光标。 为了和一般的习惯相符, 还需要把字符颜色变成蓝色和加上下划线。 这就要用到 style了、

    HSSFCellStyle linkStyle = workbook.createCellStyle();
    HSSFFont cellFont= workbook.createFont();
    cellFont.setUnderline((byte) 1);
    cellFont.setColor(HSSFColor.BLUE.index);
    linkStyle.setFont(cellFont);

    最后把style应用到cell上去就大功告成了。
    cell.setCellStyle(linkStyle);

    以上修改自http://sunnylei2008.blogspot.com/2007/07/poihssf.html
    和http://diystyle.javaeye.com/blog/132093
    还有http://blog.csdn.net/xunyiren/archive/2007/03/08/1524533.aspx
  • 相关阅读:
    录音和朗诵的实现
    树型控件的处理(完整版)
    蜘蛛爬虫
    百度公司面试题
    一名程序员的杂想
    javascript语法
    HTML标签
    Winform中保存当前控件的记录
    hdu3079 Vowel Counting (strlwr(将字符串中的字母转换为小写);strupr(转换为大写))
    hdu 1860 统计字符 (水)
  • 原文地址:https://www.cnblogs.com/azhqiang/p/3797082.html
Copyright © 2011-2022 走看看