java生产excel模板怎么让它保持的时候校验公式 就是说,当我用jxl通过自己配置字段生成excel模板之后我填写了模板中数据,然后点击保存的时候提如果我的第一列加上第二列的总和不等于我第三列数据值,提示并且不能保存JXL或者POI能实现吗?优先JXL。求大侠帮帮忙,星期六也看看技术帖子说明你很专业哦!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 思路就是获得三列,然后按行循环,判断每一行的第一列+第二列的值是否等于第三列。下面的代码假设你的exl里存的都是int型的数据。另外注意一下,每一列的行数是否相等,不相等的话情况注意判断一下。(下面代码假设每一列的行数都是相等的)public class JXLTest { public static void main(String[] args) throws Exception{ JXLUtil j = new JXLUtil(); j.check("d://test.xls"); }}class JXLUtil{ public String check(String file) throws Exception{ InputStream is = new FileInputStream(file); //获得workbook 工作薄 Workbook rwb = Workbook.getWorkbook(is); // 获取第一张Sheet 工作表 Sheet rs = rwb.getSheet(0); Cell[] col0 = rs.getColumn(0);//第一列 Cell[] col1 = rs.getColumn(1);//第二列 Cell[] col2 = rs.getColumn(2);//第三列 int rownum = rs.getRows();//总行数 for(int i = 0;i < rownum;i++){//循环所有行 int c1 = Integer.parseInt(col0[i].getContents()); int c2 = Integer.parseInt(col1[i].getContents()); int c3 = Integer.parseInt(col2[i].getContents()); if(c1 + c2 != c3){// return "error"; } } return "succuss"; }} 可以。在你另一个帖子里有代码。无非就是在写excel各单元格时判断一下前两列合是否等于第三列,如果不相等就第三列背景设置为红色。 WINDOWS MQ远程连接Linux MQ报错(急。。。) <转www.puttop.com>jQuery调用JSON时,JSONException: There is a cycle in the hierarchy! 关于乱码的解决,谢谢! 求经典的截取带中文字符串的方法。。。 关于前台属性 hibernate连接SQL Server2000出错 有那位大哥帮一下妹妹呀!急救!帮帮MM! rmi的異常 如何通过HTTP传递JAVA对象? 关于JBuilder和EJB的问题,请指点迷津 string.split("")无法用$进行分割 cron表示
下面的代码假设你的exl里存的都是int型的数据。
另外注意一下,每一列的行数是否相等,不相等的话情况注意判断一下。(下面代码假设每一列的行数都是相等的)
public class JXLTest { public static void main(String[] args) throws Exception{
JXLUtil j = new JXLUtil();
j.check("d://test.xls");
}}
class JXLUtil{
public String check(String file) throws Exception{
InputStream is = new FileInputStream(file);
//获得workbook 工作薄
Workbook rwb = Workbook.getWorkbook(is);
// 获取第一张Sheet 工作表
Sheet rs = rwb.getSheet(0);
Cell[] col0 = rs.getColumn(0);//第一列
Cell[] col1 = rs.getColumn(1);//第二列
Cell[] col2 = rs.getColumn(2);//第三列
int rownum = rs.getRows();//总行数
for(int i = 0;i < rownum;i++){//循环所有行
int c1 = Integer.parseInt(col0[i].getContents());
int c2 = Integer.parseInt(col1[i].getContents());
int c3 = Integer.parseInt(col2[i].getContents());
if(c1 + c2 != c3){//
return "error";
}
}
return "succuss";
}
}
在你另一个帖子里有代码。
无非就是在写excel各单元格时判断一下前两列合是否等于第三列,如果不相等就第三列背景设置为红色。