Foxtable(狐表)用户栏目专家坐堂 → [求助]计算


  共有2924人关注过本帖树形打印复制链接

主题:[求助]计算

帅哥哟,离线,有人找我吗?
seal51
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1838 积分:13006 威望:0 精华:0 注册:2013/6/10 9:23:00
[求助]计算  发帖心情 Post By:2018/8/9 18:55:00 [只看该作者]

有A, d1, d2三列, 输入 d1, d2的值,如何通过下面的公式计算出A列的值

图片点击可在新窗口打开查看此主题相关图片如下:公式a.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/9 19:45:00 [只看该作者]

不能直接代入计算?你遇到什么问题?在datacolchanged事件写代码

 

Dim d1 = e.datarow("d1")

Dim d2 = e.datarow("d2")

e.datarow("A") = (d2^2-d1^2)/4*3.1415926


 回到顶部
帅哥哟,离线,有人找我吗?
seal51
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1838 积分:13006 威望:0 精华:0 注册:2013/6/10 9:23:00
  发帖心情 Post By:2018/8/10 11:34:00 [只看该作者]

谢谢, 我是不会写, 那么平方是^2, 四次方就是^4, 对吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/10 11:38:00 [只看该作者]

以下是引用seal51在2018/8/10 11:34:00的发言:
谢谢, 我是不会写, 那么平方是^2, 四次方就是^4, 对吗?

 

是的。


 回到顶部
帅哥哟,离线,有人找我吗?
seal51
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1838 积分:13006 威望:0 精华:0 注册:2013/6/10 9:23:00
  发帖心情 Post By:2018/10/16 18:32:00 [只看该作者]

当计算字段不为数字的时候会提示错误:
传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 12 (""): 提供的值不是数据类型 float 的有效实例。请检查源数据中的无效值。例如,小数位数大于精度的数值类型的数据即为无效值。
如果更改代码呢?

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110579 积分:562791 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/16 20:04:00 [只看该作者]

既然是数值计算,为什么不改为数值列?如果计算结果比较大,把A里改为高精度列

 回到顶部
帅哥哟,离线,有人找我吗?
seal51
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1838 积分:13006 威望:0 精华:0 注册:2013/6/10 9:23:00
  发帖心情 Post By:2018/10/16 22:11:00 [只看该作者]

没填写数值的时候,点击保存或者关闭按钮时,会出现这种状况,我干脆就设计默认值为0吧

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110579 积分:562791 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/16 22:17:00 [只看该作者]

如果是数值列,有没有值上面的代码都不会有问题。

什么事件写了什么代码?贴出来看看

 回到顶部
帅哥哟,离线,有人找我吗?
seal51
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1838 积分:13006 威望:0 精华:0 注册:2013/6/10 9:23:00
  发帖心情 Post By:2018/10/17 7:57:00 [只看该作者]

Dim cs1 = e.DataRow("cs1")
Dim ood1 = e.DataRow("ood1")
Dim oid2 = e.DataRow("oid2")
Dim oysl1 = e.DataRow("oysl1")

SystemReady = False
e.DataRow("oysl1") = (cs1-(ood1-oid2)/2)/cs1
SystemReady = True

其他列数值为空的时候, 列oysl1显示“非数字”

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/10/17 8:49:00 [只看该作者]

改成这样

 

Dim cs1 = e.DataRow("cs1")
Dim ood1 = e.DataRow("ood1")
Dim oid2 = e.DataRow("oid2")
Dim oysl1 = e.DataRow("oysl1")

If cs1 <> Nothing Then
    SystemReady = False
    e.DataRow("oysl1") = (cs1-(ood1-oid2)/2)/cs1
    SystemReady = True
End If


 回到顶部
总数 11 1 2 下一页