Foxtable(狐表)用户栏目专家坐堂 → 数据未填入对应的单元格


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

主题:数据未填入对应的单元格

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


加好友 发短信
等级:四尾狐 帖子:877 积分:6834 威望:0 精华:0 注册:2013/2/18 17:46:00
数据未填入对应的单元格  发帖心情 Post By:2025/5/12 17:58:00 [只看该作者]

Dim t As DataTable = DataTables("考勤明细")
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Add
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
app.ActiveWindow.SplitColumn = 3
app.ActiveWindow.SplitRow = 3
app.ActiveWindow.FreezePanes = True
ws.cells.rowheight = 20
ws.cells.Columnwidth = 10
ws.cells(1, 1).Columnwidth = 15
ws.cells(2, 1).Value = "序号"
ws.cells(2, 2).Value = "姓名"
Dim d1 As Date = #3/20/2025#
Dim d2 As Date = #4/21/2025#
Dim cs As Integer = 3
Do While d1 <= d2 
    If d1.DayOfWeek = 0 Then
        ws.cells(2, cs).Value = "周日" 
        ws.cells(2, cs).Font.ColorIndex = 3
    Else
        ws.cells(2, cs).Value = d1 & " "
    End If
    cs += 1
    d1 = d1.AddDays(1)
Loop

Dim strs As List(Of String) = t.GetValues("姓名")
For i As Integer = 0 To strs.count - 1
    ws.cells(i + 3, 2).Value = " " & strs(i) & " "
    
    
    Do While d1 <= d2     '     
        Dim drlist As List(Of DataRow) = t.Select("姓名='" & strs(i) & "' and 日期=#" & d1 & "#")
        Dim ss As String = ""
        Dim idxs As String = "-1,"
        If drlist.count > 0 Then
            For Each dr As DataRow In drlist
                ss = ss & "," & dr("数据")
                idxs &= dr("_Identify") & ","
            Next
        End If
        Dim idx As Integer = ss.length
        drlist = t.Select("姓名='" & strs(i) & "' and 日期=#" & d1 & "# and _Identify not in (" & idxs.trim(",") & ")")
        If drlist.count > 0 Then
            For Each dr As DataRow In drlist
                If dr.IsNull("日期") Then
                    ss = ss & "," & dr("数据")
                End If
            Next
            
        End If
        ws.cells(i + 3, cs).Value = ss.trim(",")
        ws.cells(i + 3, cs).Characters(0, idx).font.ColorIndex = 3
        ws.cells(i + 3, cs).Characters(idx).font.ColorIndex = 1
        cs += 1
        d1 = d1.AddDays(1)
    Loop
Next
App.Visible = True

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


加好友 发短信
等级:超级版主 帖子:113802 积分:579589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/5/12 19:57:00 [只看该作者]

什么地方有问题?生成什么结果,正确的结果是什么?

 回到顶部