“张”“李”“王”列数据是将“金额”列数据按照“参加分配人员数”平均分配的。同时根据“参加分配人员”列确定某列是否参加分配,如果“参加分配人员”列不包含该列名,该列则为空。求“张”“李”“王”列的代码。谢谢!
[此贴子已经被作者于2009-8-18 18:21:07编辑过]
If e.DataCol.Name = "参加分配人员" OrElse e.DataCol.Name = "金额" Then
Dim s As String = e.DataRow("参加分配人员")
Dim c As integer = s.Length
If c > 0 Then
For i As integer = 0 To c-1
e.DataRow(s.Chars(i)) = e.Datarow("金额")/c
Next
End If
End If
[此贴子已经被作者于2009-8-18 19:13:24编辑过]
以下是引用狐狸爸爸在2009-8-18 19:13:00的发言:If e.DataCol.Name = "参加分配人员" OrElse e.DataCol.Name = "金额" Then
Dim s As String = e.DataRow("参加分配人员")
Dim c As integer = s.Length
If c > 0 Then
For i As integer = 0 To c-1
e.DataRow(s.Chars(i)) = e.Datarow("金额")/c
Next
End If
End If
[此贴子已经被作者于2009-8-18 19:13:24编辑过]
行不通吧老六.
假如参加分配人员列有其它字符(比如其它姓,而表中又没有此列),那岂不要报错.
以下是引用狐狸爸爸在2009-8-18 19:13:00的发言:If e.DataCol.Name = "参加分配人员" OrElse e.DataCol.Name = "金额" Then
Dim s As String = e.DataRow("参加分配人员")
Dim c As integer = s.Length
If c > 0 Then
For i As integer = 0 To c-1
e.DataRow(s.Chars(i)) = e.Datarow("金额")/c
Next
End If
End If
[此贴子已经被作者于2009-8-18 19:13:24编辑过]
贺老师这个代码,如果在参加分配人员列输入张李王三人,张王李三列已将计算结果算好填入,但要删除一人王,如何使王列数据自动删除。代码该如何写,谢谢!
以下是引用老有所乐在2009-8-19 16:16:00的发言:
贺老师这个代码,如果在参加分配人员列输入张李王三人,张王李三列已将计算结果算好填入,但要删除一人王,如何使王列数据自动删除。代码该如何写,谢谢!
2楼代码好使,狐爸这个要在【参加分配人员】列中必须包含 张、王、李 且不能有其他的姓氏时才有效,放在datacolchanged中与删除不删除无关吧?
删除‘王’:这段代码:
If c > 0 Then
For i As integer = 0 To c-1
e.DataRow(s.Chars(i)) = e.Datarow("金额")/c
Next
End If
改为:
If c > 0 Then
For i As integer = 0 To c-1
e.DataRow(s.Chars(i)) = nothing
e.DataRow(s.Chars(i)) = e.Datarow("金额")/c
Next
End If