Select Case e.DataCol.Name
Case "理财账户产品名称","日期"
If e.DataRow.Isnull("日期") =False Then
Dim bjs As List(Of String()) = DataTables("公司理财项目明细账").GetValues("理财账户产品名称|日期")
For Each bj As String() In bjs
Dim drs As List(Of DataRow) = DataTables("公司理财项目明细账").Select("[理财账户产品名称] = '" & bj(0) & "' and [日期] = '" & bj(1) & "'", "理财账户产品名称,日期")
For n As Integer = 0 To drs.Count - 1
If n > 0 Then
Dim dn As Date = drs(n)("日期")
Dim dn1 As Date = drs(n-1)("日期")
Dim da As Date = Date.Today
Dim tp As TimeSpan = dn - dn1
Dim tp1 As TimeSpan = da - dn
If drs(n)("当前持有金额")<>0 Then
drs(n-1)("当前金额持有天数") = tp.TotalDays
drs(n)("当前金额持有天数") = tp1.TotalDays
ElseIf drs(n)("当前持有金额")=0 Then
drs(n)("当前金额持有天数") = tp.TotalDays
drs(n)("当前金额持有天数") = Nothing
End If
ElseIf n=0 Then
Dim dn As Date = drs(n)("日期")
Dim da As Date = Date.Today
Dim tp1 As TimeSpan = da - dn
drs(n)("当前金额持有天数") = tp1.TotalDays
End If
Next
Next
End If
End Select
上述出来的是"当前金额持有天数"的结果,想实现“正确”列中这样的结果,要怎么调整
此主题相关图片如下:微信图片_20220416144128.png

[此贴子已经被作者于2022/4/16 15:29:38编辑过]