导航:首页 > 编程语言 > javaexcel公式

javaexcel公式

发布时间:2023-04-20 06:26:37

㈠ 求助:java里面去除Excel的公式,保留数值

excel 去掉公式保留数值内容常用于某种原因不愿意让别人知道公式本身。本文讲解excel 去掉公式保留数值内此逗乱容的两种方法。
excel 去掉指亩公式方法一:
全选工作表或者是按F5键打开定位对话框的“定位条件”——选择“公式”,这样就可以选取工作表所有有公式的单元格,然后复制,单击开始——粘贴——粘贴数值。

excel 去掉公式方法二:
在需要去掉公式的工作表,按ALT+F11,打开VBE编辑器,插入——模块,复制下面代码去掉公式保留值内容,按F5键森档运行即可去掉公式保留内容。
Sub excel去掉公式()
Dim sh As Worksheet
For Each sh In Sheets
sh.UsedRange = sh.UsedRange.Value
Next
End Sub

㈡ java如何获取excel公式计算结果,不用XSSFFormulaEvaluator,POI的公式取值GC频率过高

if(cell.getCachedFormulaResultType() == 0){res = String.valueOf(cell.getNumericCellValue());};
if(cell.getCachedFormulaResultType() == 1){res = cell.getStringCellValue();}
不用evaluator

㈢ java语言怎么读取excel文件公式计算后的值

你好,
1 package hrds.zpf.poi;
2
3 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
4 import org.apache.poi.hssf.usermodel.HSSFSheet;
5 import org.apache.poi.hssf.usermodel.HSSFRow;
6 import org.apache.poi.hssf.usermodel.HSSFCell;
7
8 import java.io.*;
9
10 public class FormulaToString {
11
12 /**
13 * @param args
14 */
15 public void fileInput() throws IOException {
16
17 HSSFWorkbook hw = new HSSFWorkbook(new FileInputStream(
18 "d:/My Documents/Desktop/poi.xls"));
19 HSSFSheet hsheet = hw.getSheet("poi test");
20 HSSFRow hrow = hsheet.getRow(0);
21 HSSFCell hcell = hrow.getCell(0);
22 String cellValue = this.getCellValue(hcell);
23 System.out.println(cellValue);
24
25 }
26
27 public String getCellValue(HSSFCell cell) {
28 String value = null;
29 if (cell != null) {
30 switch (cell.getCellType()) {
31 case HSSFCell.CELL_TYPE_FORMULA:
32 // cell.getCellFormula();
33 try {
34 value = String.valueOf(cell.getNumericCellValue());
35 } catch (IllegalStateException e) {
36 value = String.valueOf(cell.getRichStringCellValue());
37 }
38 break;
39 case HSSFCell.CELL_TYPE_NUMERIC:
40 value = String.valueOf(cell.getNumericCellValue());
41 break;
42 case HSSFCell.CELL_TYPE_STRING:
43 value = String.valueOf(cell.getRichStringCellValue());
44 break;
45 }
46 }
47
48 return value;
49 }
50
51 public static void main(String[] args) {
52 try {
53 // TODO Auto-generated method stub
54 FormulaToString fts = new FormulaToString();
55 fts.fileInput();
56 } catch (IOException e) {
57 e.printStackTrace();
58 }
59 }
60
61 }

㈣ Java写入Excel,Excel中公式更新的问题

您好,中公教自育为您服务。
如果是office 03,试试“工具”——选项——然后在编辑还是计算选项找一下:看自动重算是不是被你设置成手工重算了,如果,改过来。

如果是2010,则在“文件”——选项——高级——公式下。

出现你这种情况,要么是改成了手工重算,要么是你那些格子里面用的是自己写的函数 。
如有疑问,欢迎向中公教育企业知道提问。

㈤ Java POI 解析excel 公式问题

获取公式值可用 HSSFFormulaEvaluator e= New HSSFFormularEvaluator(workbook);
e.evaluate(cell).getNumberiValue.
如果不是你要的结果。还有其它很多方法。
比如这样一个比较笨的方法。
double value = cell.getNumericCellValue();
value = value * 24 *3600;
int h = (int) (value /3600)
int m= (int )((value - h* 3600) /60);
int s = (int)(value-h*3600 -m* 60) ;
String result = h + ":"+m + "s" ;
得到结果。
手机打字,格式将就看吧。

㈥ 用java解析EXCEL公式的问题

获取公式值可用 HSSFFormulaEvaluator e= New HSSFFormularEvaluator(workbook);
e.evaluate(cell).getNumberiValue.
如果不是你要的结果。还有其它很多方法。
比如这样一个比较笨的方法。
double value = cell.getNumericCellValue();
value = value * 24 *3600;
int h = (int) (value /3600)
int m= (int )((value - h* 3600) /60);
int s = (int)(value-h*3600 -m* 60) ;
String result = h + ":"+m + "s" ;
得到结果。

㈦ java怎么获取Excel表格中宏函数的值。函数的结果是文字。

参考
h-t-t-p-:-/-/-w-w-w-.-i-t-e-y-e-.-c-o-m-/topic/588050
jacob操作word excel

自己替换短横线

Excel.Application有 Run方法
Function Run([Macro], [Arg1], [Arg2], [Arg3], [Arg4], [Arg5], [Arg6], [Arg7], [Arg8], [Arg9], [Arg10], [Arg11], [Arg12], [Arg13], [Arg14], [Arg15], [Arg16], [Arg17], [Arg18], [Arg19], [Arg20], [Arg21], [Arg22], [Arg23], [Arg24], [Arg25], [Arg26], [Arg27], [Arg28], [Arg29], [Arg30])

㈧ java语言怎么读取excel文件公式计算后的值

1 package hrds.zpf.poi;
2
3 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
4 import org.apache.poi.hssf.usermodel.HSSFSheet;
5 import org.apache.poi.hssf.usermodel.HSSFRow;
6 import org.apache.poi.hssf.usermodel.HSSFCell;
7
8 import java.io.*;
9
10 public class FormulaToString {
11
12 /**
13 * @param args
14 */
15 public void fileInput() throws IOException {
16
17 HSSFWorkbook hw = new HSSFWorkbook(new FileInputStream(
18 "d:/My Documents/Desktop/poi.xls"));
19 HSSFSheet hsheet = hw.getSheet("poi test");
20 HSSFRow hrow = hsheet.getRow(0);
21 HSSFCell hcell = hrow.getCell(0);
22 String cellValue = this.getCellValue(hcell);
23 System.out.println(cellValue);
24
25 }
26
27 public String getCellValue(HSSFCell cell) {
28 String value = null;
29 if (cell != null) {
30 switch (cell.getCellType()) {
31 case HSSFCell.CELL_TYPE_FORMULA:
32 // cell.getCellFormula();
33 try {
34 value = String.valueOf(cell.getNumericCellValue());
35 } catch (IllegalStateException e) {
36 value = String.valueOf(cell.getRichStringCellValue());
37 }
38 break;
39 case HSSFCell.CELL_TYPE_NUMERIC:
40 value = String.valueOf(cell.getNumericCellValue());
41 break;
42 case HSSFCell.CELL_TYPE_STRING:
43 value = String.valueOf(cell.getRichStringCellValue());
44 break;
45 }
46 }
47
48 return value;
49 }
50
51 public static void main(String[] args) {
52 try {
53 // TODO Auto-generated method stub
54 FormulaToString fts = new FormulaToString();
55 fts.fileInput();
56 } catch (IOException e) {
57 e.printStackTrace();
58 }
59 }
60
61 }

㈨ java导出excel怎么实现公式

/**
* @author liuwu
* Excel的导入与导出
*/
@SuppressWarnings({ "unchecked" })
public class ExcelOperate {
/**
* @author liuwu
* 这是一个通用的方法,利用了JAVA的反射机制,
* 可以将放置在JAVA集合中并且符合一定条件的数据以EXCEL的形式输出到指定IO设备上
* @param title 表格标题名
* @param headers 表格属性列名数组
* @param dataset 需要显示的数据集合,集合中一定要放置符合javabean风格的类的对象。
* 此方法支持的 javabean属性【数据类型有java基本数据类型及String,Date,byte[](图片转成字节码)】
* @param out 与输出设备关联的流对象,可以将EXCEL文档导出到本地文件或者网络
* @param pattern 如果有时间数据,设定输出格式。默认为"yyy-MM-dd"
* @throws IOException
*/
public static void exportExcel(String title, String[] headers,Collection dataset, OutputStream out, String pattern) throws IOException {
// 声明一个工作薄
HSSFWorkbook workbook = new HSSFWorkbook();
// 生成一个表格
HSSFSheet sheet = workbook.createSheet(title);
// 设置表格默认列宽度为15个字节
sheet.setDefaultColumnWidth((short) 20);
// 生成一个样式
HSSFCellStyle style = workbook.createCellStyle();
// 设置这些样式
style.setFillForegroundColor(HSSFColor.SKY_BLUE.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
style.setBorderTop(HSSFCellStyle.BORDER_THIN);
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
// 生成一个字体
HSSFFont font = workbook.createFont();
font.setColor(HSSFColor.VIOLET.index);
font.setFontHeightInPoints((short) 12);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
// 把字体应用到当前的样式
style.setFont(font);
// 生成并设置另一个样式
HSSFCellStyle style2 = workbook.createCellStyle();
style2.setFillForegroundColor(HSSFColor.LIGHT_YELLOW.index);
style2.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
style2.setBorderBottom(HSSFCellStyle.BORDER_THIN);
style2.setBorderLeft(HSSFCellStyle.BORDER_THIN);
style2.setBorderRight(HSSFCellStyle.BORDER_THIN);
style2.setBorderTop(HSSFCellStyle.BORDER_THIN);
style2.setAlignment(HSSFCellStyle.ALIGN_CENTER);
style2.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
// 生成另一个字体
HSSFFont font2 = workbook.createFont();
font2.setBoldweight(HSSFFont.BOLDWEIGHT_NORMAL);
// 把字体应用到当前的样式
style2.setFont(font2);
// 产生表格标题行
HSSFRow row = sheet.createRow(0);
for (short i = 0; i < headers.length; i++) {
HSSFCell cell = row.createCell(i);
cell.setCellStyle(style);
HSSFRichTextString text = new HSSFRichTextString(headers[i]);
cell.setCellValue(text);
}
// 遍历集合数据,产生数据行
Iterator it = dataset.iterator();
int index = 0;
while (it.hasNext()) {
index++;
row = sheet.createRow(index);
Object t = it.next();
// 利用反射,根据javabean属性的先后顺序,动态调用getXxx()方法得到属性值
Field[] fields = t.getClass().getDeclaredFields();
for (short i = 0; i < fields.length; i++) {
HSSFCell cell = row.createCell(i);
cell.setCellStyle(style2);
Field field = fields[i];
String fieldName = field.getName();
String getMethodName = "get"
+ fieldName.substring(0, 1).toUpperCase()
+ fieldName.substring(1);//注意 实体get Set不要自己改名字不然反射会有问题
try {
Class tCls = t.getClass();
Method getMethod = tCls.getMethod(getMethodName,new Class[] {});
Object value = getMethod.invoke(t, new Object[] {});
HSSFRichTextString richString = new HSSFRichTextString(value.toString());
HSSFFont font3 = workbook.createFont();
font3.setColor(HSSFColor.BLUE.index);
richString.applyFont(font3);
cell.setCellValue(richString);
} catch (SecurityException e) {
e.printStackTrace();
e=null;
} catch (NoSuchMethodException e) {
e.printStackTrace();
e=null;
} catch (IllegalArgumentException e) {
e.printStackTrace();
e=null;
} catch (IllegalAccessException e) {
e.printStackTrace();
e=null;
} catch (InvocationTargetException e) {
e.printStackTrace();
e=null;
} finally {
// 清理资源
}
}
}
try {
workbook.write(out);
} catch (IOException e) {
e.printStackTrace();
e=null;
}
}
}

㈩ Java程序如何调用Excel中的各种公式

针对此问题,写了一个测试,代码如下: package cn.fory.formula; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; public class TestFormula {/*** 测试POI处理公式** 问题描述:通过POI导入的数据后,引用导入数据的原有公式单元格不能显示出来,需要重新定位到公式单元 * 格然后重新转入公式才行成得结果** 解决办法:重新对公式单元格设置公式** 相关文件:test.xls文件中手工设置单元格B2=C2+D2**/public static void main(String[] args) throws FileNotFoundException { POIFSFileSystem fs;try {fs = new POIFSFileSystem(new FileInputStream("test.xls")); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheet("Sheet1"); HSSFRow row = sheet.getRow((short) 1); HSSFCell cell = row.getCell((short) 2); cell.setCellValue((short) 5); cell = row.getCell((short) 3); cell.setCellValue((short) 40); HSSFCell cell1 = row.getCell((short)1); if (HSSFCell.CELL_TYPE_FORMULA == cell1.getCellType()) { //取得公式单元格的公式,重新设置 cell1.setCellFormula(cell1.getCellFormula());}FileOutputStream fileOut = new FileOutputStream("test.xls"); wb.write(fileOut); fileOut.close();

阅读全文

与javaexcel公式相关的资料

热点内容
win10扫描的文件在哪里 浏览:615
pdf文件公章歪了怎么处理 浏览:322
java下载文件的路径 浏览:551
现在有哪些热门的软件编程 浏览:453
asp什么文件迅雷下载 浏览:381
巫妖王之怒升级路线 浏览:348
wps如何发送文件 浏览:359
网站怎么加流量 浏览:457
圣魔之光石破解版本 浏览:110
湖北文件柜多少钱一套 浏览:103
artlantis渲染器教程 浏览:679
360系统文件可以清理吗 浏览:256
extjsform样式 浏览:513
电信猫怎么设置wifi密码 浏览:785
p190文件用什么打开 浏览:252
怎么修改ps签署文件 浏览:847
怎么找到编程猫作品文件 浏览:647
铁路局的网站是多少 浏览:194
微信双号 浏览:926
招标文件中的净值是什么意思 浏览:675

友情链接