求救:关于读取excel数据的问题

05-09-23 dizzysilly
大侠们,

最近我接到这样一个项目,十分痛苦,不知道该怎么办。

我有一个现成的excel模版,里面有将近上千个计算公式。

需求是:

1)读取页面输入数据,根据模版,生成一个excel文件。

2)读取excel文件的计算结果,并写入数据库。

第一步,我下载了Jexcelapi,做出来了,可是我不知道应该怎样触发excel去运行那些公式并且计算出来结果,我的程序大概是类似这样的。

Workbook workbook = Workbook.getWorkbook(new File("E:\\temp\\Book1.xls"));

WritableWorkbook copy = Workbook.createWorkbook(new File("E:\\temp\\cathy.xls"), workbook);

WritableSheet sheet1 = copy.getSheet(0);

Number number = new Number(0, 0, 4);

sheet1.addCell(number);

Number number2 = new Number(0, 1, 3);

sheet1.addCell(number2);

copy.write();

copy.close();

//read

workbook = Workbook.getWorkbook(new File("E:\\temp\\cathy.xls"));

Sheet sheet = workbook.getSheet(0);

Cell a1 = sheet.getCell(0,0);

Cell a2 = sheet.getCell(0,1);

Cell a3 = sheet.getCell(0,2);

System.out.println("-------- a1 "+a1.getContents());

System.out.println("-------- a2 "+a2.getContents());

FormulaCell nfc = (FormulaCell) a3;

System.out.println("-------- a3 "+nfc.getContents());

System.out.println("-------- a3 formula: " + nfc.getFormula());

运行得出的结果是

-------- a1 4

-------- a2 3

-------- a3 0

-------- a3 formula: SUM(A1,A2)

实际上a3 应该等于 4+3 =7,但我得到的是0,想这个问题想到头昏,肯请高手指点!感激不尽。。。

banq
2005-09-27 17:21
不难,死做就可以,做个字符串解释器,将公式读懂,然后运算即可。你已经成功一半,继续!

猜你喜欢