本帖最后由 加菲喵 于 2015-9-10 17:02 编辑
专题总结 >> 类excel功能下拉拖动计算
类excel功能下拉拖动计算
1. 问题描述
大家都知道excel功能非常强大,但是finereport中有些excel功能是无法实现的;比如一计算公式:A1+B1,我想要实现A1列单元格递增而B1单元格不变动的计算时,
excel是很容易实现的,但是finereport直接下拉拖动是无法实现的。
2. 实现思路
这个问题本质上是公式自动扩展问题。其实FR只是支持excel的常用公式,excel公式非常多,并不是完全支持的。 既然这里=A1+B1 进行拖拽后,会自动增长行列序号。
那么让A1是个计算的结果而不是个单元格就可以了。
3. 解决方法
利用eval公式只返回计算结果而不是单元格就行;
= A1 + eval("B" + "1")
在公式执行前,+这个运算符不执行,所以公式里不存在B1单元格,
所以纵向拖拽这个公式的时候,结果会是:
A2+eval("B" + "1")
A3+eval("B" + "1")
A4+eval("B" + "1")
。。。。。。
4. 预览效果
|