找回密码
 立即注册

QQ登录

只需一步,快速开始

sam
论坛元老   /  发表于:2013-4-21 21:59  /   查看:7210  /  回复:9
Hi  Dof  or iceman:

请教个问题,在Spread表格中,使用Js如何来实现有多页的某列的汇总计算。
即:表格有做分页,比如说,有2页。我现在要计算第二列的汇总值(使用JS)。我知道可以使用后台来实现。但是,我现在就是想使用前台来实现.
因我要改变某个单元格值时候,要能马上计算出汇总值。这样,就需要使用到JS的方法来实现。如果只有一页,是可以实现的,在JS中,通过循环来递增每行的值。
但是,如果有多页,这样就取不到除当前页外另外页的值。请问,这该如何来实现(注:只能使用JS来实现)。即可理解为,用JS如何取到跨页的值?

以上麻烦尽快想想,看是否有合适的解决办法,这个问题很急,也困扰我很久了。谢谢!

9 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2013-4-22 12:10:00
沙发
回复 1楼sam的帖子

sam 你好,
请问有没有设置 Spread 下属性 ClientAutoCalculation = true。此属性决定单元格内容更改后,是否自动计算。
回复 使用道具 举报
sam
论坛元老   /  发表于:2013-4-22 13:30:00
板凳
有設置,但是,這個屬性即使設置了,也要等SaveChanges()才能變更匯總值。現在我要的是,用戶一輸入某個值,要能馬上進行匯總計算。
回复 使用道具 举报
sam
论坛元老   /  发表于:2013-4-22 13:31:00
地板
用JS的ondatachanged事件是可以實現及時運算的,但是就是,在JS中,無法得到跨頁的數據(有多頁時)。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-4-22 18:07:00
5#
回复 4楼sam的帖子

sam 你好,

附件是我测试改变单元格内容后自动计算的 Demo,或者你可以把你的 测试工程发上来,我这边协助测试。
8707.zip (2.87 MB, 下载次数: 142)
回复 使用道具 举报
sam
论坛元老   /  发表于:2013-5-22 17:47:00
6#
Hi  iceman :

我现在还有个问题,我这边可能需要汇总的行,不是某列的所有行的汇总值,而可能是,某一列的其中某些行的汇总值。

比如说,我现在有两个表格,第一个表格是主表,第二个表格是从表,我现在是在开始时全部加载了所有的数据。而当用户点击了主表的某行数据时候,其从表应该是显示对应的数据行数据,其他行的数据行暂时隐藏掉。这样的汇总数据应该就是,显示出来的行的汇总值,其隐藏的不要计算在内。

请问,如上需求该如何实现。(注:以上需求是,必须在开始显示出所有的数据)

谢谢!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-5-22 18:45:00
7#
回复 6楼sam的帖子

你好,问题正在处理中,明天回复
回复 使用道具 举报
sam
论坛元老   /  发表于:2013-5-22 20:29:00
8#
好的。谢谢!
回复 使用道具 举报
sam
论坛元老   /  发表于:2013-5-23 17:03:00
9#
hi  请问,这个问题,现在有没解决办法?谢谢!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-5-23 17:23:00
10#
回复 9楼sam的帖子

sam 你好,
不好意思让你久等了。

鉴于统计行不固定,那我们可以使用拼接公式的方法来实现。
例如统计的行为 1 和 2,那公式需要设置如下:


  1. this.FpSpread1.Sheets[0].Cells[row, col].Formula = "A1+A2";
复制代码


不知道我描述的是否清楚,拼接公式,还可以参考:http://blog.gcpowertools.com.cn/ ... 5%AC%E5%BC%8F-.aspx
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部