Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现EXCEL函数运算


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

主题:[求助]如何实现EXCEL函数运算

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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
[求助]如何实现EXCEL函数运算  发帖心情 Post By:2015/5/24 9:25:00 [只看该作者]

excel中函数为:
K5=SUMPRODUCT($N$2:$S$2,N5:S5)
指定单元格计算


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


FOXTABLE中如何实现,都是整列整行对应的计算,怎么做到指定单元格计算


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/24 9:52:00 [只看该作者]

 去写Datacolchanged事件代码

 

Select Case e.DataCol.Name
    Case "第四列", "第五列", "第六列"
        Dim r1 As Row = Tables("表A").Rows(0)
        e.DataRow("第一列") = r1("第四列") * e.DataRow("第四列") + r1("第四列") * e.DataRow("第五列") + r1("第六列") * e.DataRow("第六列")
End Select


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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
  发帖心情 Post By:2015/5/24 10:15:00 [只看该作者]

先谢过, 小白,麻烦问一下去写Datacolchanged事件代码 这个是在哪个窗口做? 表达式列公式吗?我这边代码粘进去修改后显示CASE运算符后缺少操作数

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/24 10:17:00 [只看该作者]

 初学者,建议先去看一下视频教程

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67818

 


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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
  发帖心情 Post By:2015/5/24 10:20:00 [只看该作者]

好的,谢谢

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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
  发帖心情 Post By:2015/5/24 11:03:00 [只看该作者]

大大,
Select Case e.DataCol.Name
    Case "手动两驱基本型", "手动两驱标准型", "手动两驱舒适型"
        Dim r1 As Row = Tables("PBOM").Rows(0)
        e.DataRow("生产计划1") = r1("手动两驱基本型") * e.DataRow("手动两驱基本型") + r1("手动两驱基本型") * e.DataRow("手动两驱标准型") + r1("手动两驱基本型") * e.DataRow("手动两驱舒适型")
End Select

我按这个修改过后,修改数值后只返回一列的变化

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

想要得到的是图中第三列第四行的值=第六列第一行*第六列第四行+第七列第一行*第七列第四行+第八列第一行*第八列第四行, Dim r1 As Row = Tables("PBOM").Rows(0) 是否是因为我这句的赋值有错误?
麻烦了
[此贴子已经被作者于2015/5/24 11:04:51编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/24 11:12:00 [只看该作者]

 代码没有问题,现在有什么问题?你修改一下 手动两驱基本型, 手动两驱标准型, 手动两驱舒适型 的值,不计算么?

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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
  发帖心情 Post By:2015/5/24 11:15:00 [只看该作者]

计算,但是我修改了手动基本型第一行的值为100,得到生产计划1第一行的值为10000,跟我需要的运算结果不符
想要得到的是图中生产计划1第四行的值=手动基本型第一行*手动基本型第四行+手动标准型第一行*手动标准型第四行+手动舒适型第一行*手动舒适型第四行
之后第三列每一行的值都按这个函数进行计算
[此贴子已经被作者于2015/5/24 11:18:09编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/24 11:25:00 [只看该作者]

Select Case e.DataCol.Name
    Case "第四列", "第五列", "第六列"
        Dim idx As Integer = Tables("表A").FindRow(e.DataRow)
        If idx = 0 Then
            e.DataTable.DataCols("第四列").RaiseDataColChanged("_Identify <> " & e.DataRow("_Identify"))
            e.DataRow("第一列") = Nothing
        Else If idx = 1 Then
            e.DataRow("第一列") = Nothing
        Else
            Dim r1 As Row = Tables("表A").Rows(0)
            e.DataRow("第一列") = r1("第四列") * e.DataRow("第四列") + r1("第五列") * e.DataRow("第五列") + r1("第六列") * e.DataRow("第六列")
        End If
End Select


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


加好友 发短信
等级:一尾狐 帖子:422 积分:3430 威望:0 精华:0 注册:2015/5/20 8:44:00
  发帖心情 Post By:2015/5/24 11:31:00 [只看该作者]

万分感谢,这个可以了 我这边好好研究一下代码

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