上次已经为大家介绍过java中Excel单元格对齐包含什么?使用边框怎么做?的相关内容,今天继续为大家简述java中Excel公式的计算和函数,并且通过实际的例子来为大家展示。

首先会展示实际的代码,并附有一定的说明。

一、基本计算,代码展示如下:HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet)

HSSFRow row = sheet.createRow(0);

HSSFCell cell = row.createCell(0);

cell.setCellFormula("2+3*4"); //设置公式

cell = row.createCell(1);

cell.setCellValue(10);

cell = row.createCell(2);

cell.setCellFormula("A 1*B 1"); //设置公式

二、SUM函数,代码展示如下:HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet)

HSSFRow row = sheet.createRow(0);

row.createCell(0)

.setCellValue(1);

row.createCell(1)

.setCellValue(2);

row.createCell(2)

.setCellValue(3);

row.createCell(3)

.setCellValue(4);

row.createCell(4)

.setCellValue(5);

row = sheet.createRow(1);

row.createCell(0)

.setCellFormula("sum(A 1,C 1)"); //等价于"A 1+C 1"

row.createCell(1)

.setCellFormula("sum(B 1:D 1)"); //等价于"B 1+C 1+D 1"

三、日期函数,代码展示如下:HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet)

HSSFCellStyle style = workbook.createCellStyle();

style.setDataFormat(workbook.createDataFormat()

.getFormat("yyyy-mm-dd"));

HSSFRow row = sheet.createRow(0);

Calendar date = Calendar.getInstance(); //日历对象

HSSFCell cell = row.createCell(0);

date.set(2011, 2, 7);

cell.setCellValue(date.getTime());

cell.setCellStyle(style); //第一个单元格开始时间设置完成

cell = row.createCell(1);

date.set(2014, 4, 25);

cell.setCellValue(date.getTime());

cell.setCellStyle(style); //第一个单元格结束时间设置完成

cell = row.createCell(3);

cell.setCellFormula("CONCATENATE(DATEDIF(A 1,B 1,\"y\"),\"年\")");

cell = row.createCell(4);

cell.setCellFormula("CONCATENATE(DATEDIF(A 1,B 1,\"m\"),\"月\")");

cell = row.createCell(5);

cell.setCellFormula("CONCATENATE(DATEDIF(A 1,B 1,\"d\"),\"日\")");

四、字符串相关函数,代码展示如下:HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet)

HSSFRow row = sheet.createRow(0);

row.createCell(0)

.setCellValue("abcdefg");

row.createCell(1)

.setCellValue("aa bb cc dd ee fF GG");

row.createCell(3)

.setCellFormula("UPPER(A 1)");

row.createCell(4)

.setCellFormula("PROPER(B 1)");

接下来对上面代码中的公式作一个简要的说明:

①UPPER(string):将文本转换成大写形式。

②PROPER(string):将文字串的首字母及任何非字母字符之后的首字母转换成大写。将其余的字母转换成小写。

五、IF函数,代码展示如下:HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet)

HSSFRow row = sheet.createRow(0);

row.createCell(0)

.setCellValue(12);

row.createCell(1)

.setCellValue(23);

row.createCell(3)

.setCellFormula("IF(A 1>B 1,\"A 1大于B 1\",\"A 1小于等于B 1\")");

同样地,对IF函数作一个简要的说明:IF(logical_test,value_if_true,value_if_false)用来作为逻辑判断。这里面的①Logical_test表示计算结果为TRUE或FALSE的任意值或表达式 ;

②value_if_true表示当表达式Logical_test的值为TRUE时的返回值;③value_if_false表示当表达式Logical_test的值为FALSE时的返回值。

以上就是关于java中Excel公式的计算和函数并且通过实际的例子为大家展示,同时还作了简要的说明。如果你对java知识感兴趣,想要了解更多java基础和java经典例子,敬请关注奇Q工具网。

推荐阅读:

java excel公式计算_java中Excel公式的计算和函数,实例展示相关推荐

  1. java 精确 计算_java中进行高精度精准计算

    今天在做接口传保费的时候出现了一个奇怪的问题,double类型保费变成了一大长串的非精准保费,甚至奇怪,难道是java的bug?最后通过度娘找到了答案 话不多说,先看如下代码public final ...

  2. java excel 导入导出_java中excel文件的导入和导出

    如有需要可以加我Q群[308742428]大家一起讨论技术,提供技术支持. 后面会不定时为大家更新文章,敬请期待. 前端上传excel文件到后台,后台接收后保存数据到数据库. 这里需要说明的一点是前端 ...

  3. java excel表格导入_java中excel表格导入实例

    展开全部 需要32313133353236313431303231363533e59b9ee7ad9431333264623165导入jxl.jar (在网上可以下载,然后放到lib文件夹中) 开放分 ...

  4. Java写一个excel工具类_Java中Excel写操作工具类--Java免费学习网

    核心提示:package com.common.excel;import com.common.excel.exception.WriteExcelException;import jxl.Workb ...

  5. java double 计算_Java中的Double类型计算

    一.问题的提出: 如果我们编译运行下面这个程序会看到什么? public class Test{ public static void main(String args[]){ System.out. ...

  6. java 中时间计算_java中关于时间的计算

    1.描述:在原有时间上增加一个时间差: 代码示例: Date psd = sysDate(); String workTimeP1 = mapP.get("WORK_TIME_") ...

  7. office2007 打开Excel 提示 工作表中的公式包含一个或多个无效引用的解决方法

    打开带有数据或者图表的工作表或工作簿中,有时候会弹出一个对话框"工作表中的公式包含一个或多个无效引用,请验证公式包含的路径.工作簿.区域名称或单元格引用",单击确定后就不再显示,但 ...

  8. java中excel上传_java对excel表格的上传和下载处理

    Excel表格文件的上传和下载,java中涉及到文件肯定会有io流的知识. 而excel文件就要涉及到poi技术,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为 ...

  9. Excel如何提取身份证中出生年月日、计算年龄、性别

    身份证号是18位,前6位是所属省市区.7至14位是出生年月日.其中第17位表示性别,奇数为男性,偶数女性 身份证号 340204198107181456 340204199504172986 3426 ...

  10. excel插入行 uipath_Uipath中excel的activities用法介绍

    1.auto fill range – excel自动填充范围,如图:公式会自增,但数值没有 2.copy patse sheet,好像只能复制粘贴到同一个excel中 第一个是粘贴位置,第二个是粘贴 ...

最新文章

  1. c语言文件操作中换行,关于文件操作,碰到空格就换行
  2. es6数组初始化_ES6 迭代器(Iterator)和 for...of循环使用方法
  3. [USACO1.3]号码锁 Combination Lock
  4. iOS实战:第一次在iTunesConnect上建立应用时注意公司名称
  5. cocos ScrollView(滚动容器)加载大量item导致的卡顿问题解决方案
  6. 外部访问docker容器(docker run -p/-P 指令) docker run -d -p 5000:5000 {hostPort:containerPort(映射所有接口地}
  7. javascript关键字_让我们揭开JavaScript的“ new”关键字的神秘面纱
  8. 织梦留言板guestbook.htm加入头部导航
  9. struts单例模式 java_Java单例设计模式详细介绍
  10. iPhone 13全系价格曝光:顶配售价将达新高
  11. Setting the Background Image for a List Control
  12. 极简代码(六)—— 返回 0/1 构成的布尔向量
  13. 武汉Apache Hadoop大数据平台,金融行业如何搭建大数据平台?数据采集、分析、处理如何实现?...
  14. 数据包络分析CCR、BCC模型
  15. 计算机硬件系统实验教程代码,计算机硬件系统实验教程
  16. ae合成设置快捷键_这些AE技巧,相见恨晚
  17. MLP,GCN,GAT,GraphSAGE, GAE, Pooling,DiffPool
  18. vue.js转换乘html_Vue.js的声明式共享元素转换
  19. 1003.Crashing Balloon
  20. python——spilt和strip用法

热门文章

  1. HTML入门笔记8-上脚注和下脚注标签
  2. instant app入门和开发指南
  3. 原生js写简易别踩白块儿
  4. u盘最大单个文件支持多少g_USB 文件传输单个文件最大能用多少G???
  5. 前端学习总结(九)MongoDB——最出色的文档型数据库
  6. Qt 解决窗口在多个显示器上显示位置设置问题
  7. hdu2201:熊猫阿波的故事
  8. react-router-dom v6 使用
  9. 苹果应用商店AppStore审核规则指南
  10. 11 个很少人知道但很有用的 Linux 命令