java excel公式计算_java中Excel公式的计算和函数,实例展示
上次已經(jīng)為大家介紹過(guò)java中Excel單元格對(duì)齊包含什么?使用邊框怎么做?的相關(guān)內(nèi)容,今天繼續(xù)為大家簡(jiǎn)述java中Excel公式的計(jì)算和函數(shù),并且通過(guò)實(shí)際的例子來(lái)為大家展示。
首先會(huì)展示實(shí)際的代碼,并附有一定的說(shuō)明。
一、基本計(jì)算,代碼展示如下:HSSFSheet?sheet?=?workbook.createSheet("Test");?//?創(chuàng)建工作表(Sheet)
HSSFRow?row?=?sheet.createRow(0);
HSSFCell?cell?=?row.createCell(0);
cell.setCellFormula("2+3*4");?//設(shè)置公式
cell?=?row.createCell(1);
cell.setCellValue(10);
cell?=?row.createCell(2);
cell.setCellFormula("A?1*B?1");?//設(shè)置公式
二、SUM函數(shù),代碼展示如下:HSSFSheet?sheet?=?workbook.createSheet("Test");?//?創(chuàng)建工作表(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)");?//等價(jià)于"A?1+C?1"
row.createCell(1)
.setCellFormula("sum(B?1:D?1)");?//等價(jià)于"B?1+C?1+D?1"
三、日期函數(shù),代碼展示如下:HSSFSheet?sheet?=?workbook.createSheet("Test");?//?創(chuàng)建工作表(Sheet)
HSSFCellStyle?style?=?workbook.createCellStyle();
style.setDataFormat(workbook.createDataFormat()
.getFormat("yyyy-mm-dd"));
HSSFRow?row?=?sheet.createRow(0);
Calendar?date?=?Calendar.getInstance();?//日歷對(duì)象
HSSFCell?cell?=?row.createCell(0);
date.set(2011,?2,?7);
cell.setCellValue(date.getTime());
cell.setCellStyle(style);?//第一個(gè)單元格開(kāi)始時(shí)間設(shè)置完成
cell?=?row.createCell(1);
date.set(2014,?4,?25);
cell.setCellValue(date.getTime());
cell.setCellStyle(style);?//第一個(gè)單元格結(jié)束時(shí)間設(shè)置完成
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\"),\"日\(chéng)")");
四、字符串相關(guān)函數(shù),代碼展示如下:HSSFSheet?sheet?=?workbook.createSheet("Test");?//?創(chuàng)建工作表(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)");
接下來(lái)對(duì)上面代碼中的公式作一個(gè)簡(jiǎn)要的說(shuō)明:
①UPPER(string):將文本轉(zhuǎn)換成大寫(xiě)形式。
②PROPER(string):將文字串的首字母及任何非字母字符之后的首字母轉(zhuǎn)換成大寫(xiě)。將其余的字母轉(zhuǎn)換成小寫(xiě)。
五、IF函數(shù),代碼展示如下:HSSFSheet?sheet?=?workbook.createSheet("Test");?//?創(chuàng)建工作表(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\")");
同樣地,對(duì)IF函數(shù)作一個(gè)簡(jiǎn)要的說(shuō)明:IF(logical_test,value_if_true,value_if_false)用來(lái)作為邏輯判斷。這里面的①Logical_test表示計(jì)算結(jié)果為T(mén)RUE或FALSE的任意值或表達(dá)式 ;
②value_if_true表示當(dāng)表達(dá)式Logical_test的值為T(mén)RUE時(shí)的返回值;③value_if_false表示當(dāng)表達(dá)式Logical_test的值為FALSE時(shí)的返回值。
以上就是關(guān)于java中Excel公式的計(jì)算和函數(shù)并且通過(guò)實(shí)際的例子為大家展示,同時(shí)還作了簡(jiǎn)要的說(shuō)明。如果你對(duì)java知識(shí)感興趣,想要了解更多java基礎(chǔ)和java經(jīng)典例子,敬請(qǐng)關(guān)注奇Q工具網(wǎng)。
推薦閱讀:
總結(jié)
以上是生活随笔為你收集整理的java excel公式计算_java中Excel公式的计算和函数,实例展示的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 求2的幂
- 下一篇: 100流明相当于多少w_GE的50W卤素