public void merge(int startrow,int endstartrow,int startColumn,int endColumn){
sht.addMergedRegion(new CellRangeAddress(startrow, endstartrow, startColumn, endColumn));
}

合并单元格时候  合并后的单元格部分边框会看不见。从而进行处理。

下面是处理样式的 方法。 单元格设置边框

public void setStyle(int size, int color, boolean isBold, boolean isItalic, int backgroudColor, int align, int valign)
{
style = wb.createCellStyle();
style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
style.setBottomBorderColor(HSSFColor.BLACK.index);
style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
style.setLeftBorderColor(HSSFColor.BLACK.index);
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
style.setRightBorderColor(HSSFColor.BLACK.index);
style.setBorderTop(HSSFCellStyle.BORDER_THIN);
style.setTopBorderColor(HSSFColor.BLACK.index);
HSSFFont font = wb.createFont();
font.setColor((short)color);
font.setFontHeightInPoints((short)size);
if (isBold)
{
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
}
else
{
font.setBoldweight(HSSFFont.BOLDWEIGHT_NORMAL);
}
font.setItalic(isItalic);
style.setFont(font);
style.setFillForegroundColor((short)backgroudColor);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
style.setAlignment((short)align);
style.setVerticalAlignment((short)valign);
}

然而并无卵用,一直出现 单元格无边框。几个单元格都出现相同效果。总结是合并单元格的 最后一个单元格 的边框总是有一边不显示。

最后解决办法是挺简单的,只要给最后那个单元格里面放一个空字符串。问题就解决了。

ew.putData(1, 1, 1, "");

ew是放数据的。

public void putData(int shtidx, int rowidx, int colidx, Object data)
{
if (rowidx > bounder)
{
try
{
wb.getSheetAt(shtidx);
}
catch (IndexOutOfBoundsException e)
{
wb.createSheet();
wb.setSheetName(shtidx, "Sheet " + (shtidx + 1));
}
sht = wb.getSheetAt(shtidx);
}
if (sht.getRow(rowidx) == null)
{
sht.createRow(rowidx);
}
row = sht.getRow(rowidx); if (row.getCell(colidx) == null)
{
row.createCell(colidx);
}
cell = row.getCell(colidx); if (data instanceof Double)
{
Double d = (Double)data;
cell.setCellValue(d);
}
else if (data instanceof Integer)
{
Integer i = (Integer)data;
cell.setCellValue(i);
}
else if (data instanceof Date)
{
Date d = (Date)data;
cell.setCellValue(d);
}
else if (data instanceof String)
{
String s = (String)data;
cell.setCellValue(s);
}
else
{
String s;
if (data == null)
{
data = new String("");
}
s = data.toString();
cell.setCellValue(s);
} cell.setCellStyle(style);
}

poi 合并单元格 无边框问题的更多相关文章

  1. java poi 合并单元格后边框问题

    在项目中用poi合并单元格,但发现边框会有不显示的问题. 在网上搜集了答案,来记录一下. 解决方法: 将每个没用到的单元格都设空值. 例如: HSSFCell cell = row.createCel ...

  2. apache poi合并单元格设置边框

    HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet(); //创建一个样式 HSSFCellStyle sty ...

  3. poi合并单元格同时导出excel

    poi合并单元格同时导出excel POI进行跨行需要用到对象HSSFSheet对象,现在就当我们程序已经定义了一个HSSFSheet对象sheet. 跨第1行第1个到第2个单元格的操作为 sheet ...

  4. java poi 合并单元格

    java poi 合并单元格 2017年03月29日 16:39:01 翠烟你懊恼 阅读数:26561   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.n ...

  5. poi 合并单元格、设置边框

    HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet(); //创建一个样式 HSSFCellStyle sty ...

  6. python3-xlwt-Excel设置(字体大小、颜色、对齐方式、换行、合并单元格、边框、背景、下划线、斜体、加粗)

    搬运出处: https://blog.csdn.net/weixin_44065501/article/details/88899257 # coding:utf-8 import patterns ...

  7. Apache POI 合并单元格

    合并单元格所使用的方法: sheet.addMergedRegion( CellRangeAddress  cellRangeAddress  );   CellRangeAddress  对象的构造 ...

  8. Apache POI 合并单元格--简单解释版带Demo

    合并单元格所使用的方法: sheet.addMergedRegion( CellRangeAddress  cellRangeAddress  );   CellRangeAddress  对象的构造 ...

  9. java poi导出Excel合并单元格并设置边框

    import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; i ...

随机推荐

  1. JavaScript 在函数中使用Ajax获取的值作为函数的返回值

    解决:JavaScript 在函数中使用Ajax获取的值作为函数的返回值,结果无法获取到返回值 原因:ajax默认使用异步方式,要将异步改为同步方式 案例:通过区域ID,获取该区域下所有的学校 var ...

  2. H5 技术

    1,HTML5预加载标签 <!-- 页面,可以使用绝对或者相对路径 --> <link rel="prefetch" href="page2.html& ...

  3. XCode 自动化打包总结

    最近一个礼拜折腾xcode 中ipa 自动化打包,对我来说也说是磕磕碰碰.毕竟对mac下的命令行模式完全不熟悉.而且我们的项目是基于cordova的一个项目. 之前我自己对cordova 项目的命令行 ...

  4. android开发艺术探索

    android开发艺术探索  百度任玉刚 http://blog.csdn.net/singwhatiwanna/article/details/46810527

  5. 创建一个Windows窗体

    20140702加: WS_OVERLAPPEDWINDOW这个属性如果写成WS_OVERLAPPED,则窗口没有最大最小按钮以及左边的系统的菜单. vs2010下的代码提示快捷键:CTRL + J ...

  6. Configuration for Python to run on Android

    It's exiting to learn to make app on Android with python. But when I check <Head First Python> ...

  7. 您不能在64-位可执行文件上设置DEP属性?

    我是为dllhost.exe设置DEP时遇到了同样的情况.你需要选择64位系统对应的程序.64位系统:C:\Windows\SysWOW64\dllhost.exe32位系统:C:\Windows\S ...

  8. ubuntu 新系统需要做的事

    1 : 打开语言支持 开始补齐并且选择自己需要的语言包 . 2 : 搜索计算机 输入 update 找到软件更新器 更新软件库 . 然后打开ubuntu自带软件安装工具下载自己想要的软件(没有更新之前 ...

  9. 【LeetCode OJ】Reverse Words in a String

    Problem link: http://oj.leetcode.com/problems/reverse-words-in-a-string/ Given an input string, reve ...

  10. simple grammer

    <?phpecho strlen("Hello world!"); // outputs 12?> <?phpecho str_word_count(" ...