找回密码
 立即注册

QQ登录

只需一步,快速开始

sinmax

注册会员

11

主题

46

帖子

183

积分

注册会员

积分
183

活字格认证

sinmax
注册会员   /  发表于:2012-4-17 09:15  /   查看:14308  /  回复:20
如果在Designer上设计的
A4=A1+A2+A3
这样的公式,为什么不会得出应有的值呢?

20 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 09:52:00
沙发
出现这种情况可能是有两种原因造成的:
1、没有设置AutoCaculation = true
2、该列的CellType不是数值类型,可以设置Columns[0].CellType = Number
回复 使用道具 举报
sinmax
注册会员   /  发表于:2012-4-17 09:54:00
板凳
好的,解决了,一定要设置CellType。。。。谢谢!!!我疏忽了!!

还有一个问题,请问有没有一个选项来进行“公式”和“值”的切换!!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 09:58:00
地板
原帖由 sinmax 于 2012-4-17 9:54:00 发表
还有一个问题,请问有没有一个选项来进行“公式”和“值”的切换!!


抱歉,你这里提到的“公式”和“值”的切换是一个什么需求呢,能详细描述一下吗。
回复 使用道具 举报
sinmax
注册会员   /  发表于:2012-4-17 10:05:00
5#
比如
  
  A3单元格 的 值是  = 7 ,但它是 A1+A2 值合计起来的。能不能让A3单元格,可以切换显示是 7 或 A1+A2
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 11:40:00
6#
可以通过一下代码设置实现,用户编辑有公式的单元格时,就会显示公式,非编辑状态就显示计算结果:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {
  3.         this.fpSpread1.AllowUserFormulas = true;
  4.         this.fpSpread1.ActiveSheet.Cells[0, 0].Formula = "A2+A3+A4";
  5.     }
复制代码
回复 使用道具 举报
sinmax
注册会员   /  发表于:2012-4-17 11:54:00
7#
能写一个示例吗?谢谢!!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 13:40:00
8#
就这两行代码就可以了:

Cells[0,0]处于非编辑状态时显示A2+A3+A4的值,双击Cells[0,0]之后就显示 =A2+A3+A4
4070_Formula.zip (9.69 KB, 下载次数: 911)
回复 使用道具 举报
sinmax
注册会员   /  发表于:2012-4-17 13:53:00
9#
我的是COM的Spread。。好像不行。。。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-4-17 15:42:00
10#
我8楼中的代码使用的是VS2010+ Spread for .net6.0

请问你使用的是上面环境呢
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部