找回密码
 立即注册

QQ登录

只需一步,快速开始

aioliahly

注册会员

14

主题

25

帖子

113

积分

注册会员

积分
113
aioliahly
注册会员   /  发表于:2017-7-20 15:54  /   查看:3919  /  回复:7
用fpSpread1.Open()方法打开原有报表时,是否有公式计算前的事件,用来实现在公式开始计算前对报表某些单元格进行校验和修改,如果没有这个事件的话,那是否可以在打开报表是不计算公式,稍后再计算的方法,谢谢。

7 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-20 16:56:03
沙发
        您好可以打开excel 后不重新计算
    fpSpread1.OpenExcel("", FarPoint.Excel.ExcelOpenFlags.DoNotRecalculateAfterLoad);
            // you code
            fpSpread1.ActiveSheet.RecalculateAll()
回复 使用道具 举报
aioliahly
注册会员   /  发表于:2017-7-24 09:59:02
板凳
dexteryao 发表于 2017-7-20 16:56
您好可以打开excel 后不重新计算
    fpSpread1.OpenExcel("", FarPoint.Excel.ExcelOpenFlags.Do ...

我保存文件用的是fpSpread1.Save(sf.FileName, false),打开文件用的是fpSpread1.Open(ofd.FileName)。
用这种方式,是否能实现在打开报表时不计算公式,稍后再计算,或者有事件在公式计算前触发,谢谢。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-24 17:43:00
地板
不太清楚和您之前的描述有什么区别。
   fpSpread1.OpenExcel("", FarPoint.Excel.ExcelOpenFlags.DoNotRecalculateAfterLoad);
这个操作无法满足您的需求吗
回复 使用道具 举报
aioliahly
注册会员   /  发表于:2017-7-25 11:31:47
5#
dexteryao 发表于 2017-7-24 17:43
不太清楚和您之前的描述有什么区别。
   fpSpread1.OpenExcel("", FarPoint.Excel.ExcelOpenFlags.DoNotR ...

用fpSpread1.Save(sf.FileName, false)保存的文件,用fpSpread1.OpenExcel("", FarPoint.Excel.ExcelOpenFlags.DoNotRecalculateAfterLoad); 方法打开报错,openexcel返回的结果是false
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-25 16:22:46
6#
Save 方法是保存为xml ,而OpenExcel 是打开excel,您要是保存Excel 是Save Excel方法。打开xml是Open,是配对使用的。
回复 使用道具 举报
aioliahly
注册会员   /  发表于:2017-7-26 09:53:52
7#
dexteryao 发表于 2017-7-25 16:22
Save 方法是保存为xml ,而OpenExcel 是打开excel,您要是保存Excel 是Save Excel方法。打开xml是Open,是 ...

我项目中的需求是要保存成xml格式,请问如果保存为xml格式,有没有办法控制公式的计算时机,或者有公式计算前可以触发的事件?我的目的是需要在公式计算前进行一些操作,比如对某些单元格的数据进行处理后才可以进行计算。谢谢
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-26 18:19:49
8#
aioliahly 发表于 2017-7-26 09:53
我项目中的需求是要保存成xml格式,请问如果保存为xml格式,有没有办法控制公式的计算时机,或者有公式计 ...

您好,您的问题正在处理中,有处理结果后会第一时间给您回复。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部