以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  怎样做下面的表格  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=37736)

--  作者:xzc1221
--  发布时间:2013/7/9 22:56:00
--  怎样做下面的表格

户名 位置 数量 总量
A e 10 60
f 20
g 30
B  s 30 60
f 20
j 10
C n 60 110
m 50
D p 40 40

要求总量等于户名相同的数量之合,以表格形式显示
--  作者:y2287958
--  发布时间:2013/7/10 6:39:00
--  
用合并模式即可
--  作者:xzc1221
--  发布时间:2013/7/10 18:15:00
--  
问题是如何设置总量列的公式,或者代码,让总量列的值等于户名相同的数量列的值的和。
--  作者:Bin
--  发布时间:2013/7/11 8:46:00
--  
后面的总量合并无法做到这样的哦. 合并模式只能移到前面去.
--  作者:Bin
--  发布时间:2013/7/11 8:46:00
--  
总量列可以用表达式列. 根据条件SUM数量
[此贴子已经被作者于2013-7-11 8:46:23编辑过]

--  作者:y2287958
--  发布时间:2013/7/11 10:26:00
--  

试试这个?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip


--  作者:y2287958
--  发布时间:2013/7/11 10:34:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip

这个是用了表达式的


--  作者:xzc1221
--  发布时间:2013/7/11 17:59:00
--  

很不错,能满足要求,非常感谢。

能否再帮下忙,如果户名列不同,总量列相同且相邻,能否只合并户名列相同的总量列,户名列不同的总量列不合并

[此贴子已经被作者于2013-7-11 22:04:59编辑过]

--  作者:cxabc123
--  发布时间:2013/7/12 17:02:00
--  
 

项目事件

 

MainTableChanged

 

If MainTable.Name = "表A"

    DataTables("表A").DataCols("第一列").RaiseDataColChanged

    Functions.Execute("a")

End If

 

计划管理

 

表事件

 

表A_DataColChanged

 

Select Case e.DataCol.Name

    Case "第一列","第二列","第三列"

        Dim s As String = "第一列=\'" & e.DataRow("第一列") & "\'"

        Dim i As Integer = DataTables("表A").Compute("Sum(第三列)",s)

        DataTables("表A").ReplaceFor("第五列",i,s)

End Select

 

窗口表事件

 

窗口与控件事件

 

自定义函数

 

a

 

With Tables("表A")

    .MergeMode = MergeModeEnum.Free

    .MergeCols.Clear()

    .MergeCols.Add("第一列")

    .MergeCols.Add("第五列")

    .MergeSort = ""

    .AllowMerge = True

End With

 

 

很有使用价值

[此贴子已经被作者于2013-7-12 17:02:33编辑过]

--  作者:xzc1221
--  发布时间:2013/7/12 22:46:00
--  
非常感谢,也很有使用价值。我希望象附件那样的表格,能否再帮下忙
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:book1.xls

[此贴子已经被作者于2013-7-12 22:46:48编辑过]