Foxtable(狐表)用户栏目专家坐堂 → 求助:报表中修改值


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

主题:求助:报表中修改值

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/1 20:20:00 [只看该作者]

Dim dt As Table = Tables("统计_table1")
Dim nms()  As String = {"日期","编号","底盘号","序号","不良描述","判定"} '要导出的列名
Dim caps() As String = {"日期","台数","底盘号","序号","不良描述","判定"}  '对应的列标题
Dim szs() As Integer = {200,50,80,40,300,40} '对应的列宽
Dim Book As New XLS.Book '定义一个Excel工作簿
Book.Sheets.Add("一次下线日报")'增加一个工作表
Dim Sheet As XLS.Sheet = Book.Sheets("一次下线日报") '引用工作簿的第一个工作表
Dim st As XLS.Style = Book.NewStyle '日期列的显示格式
st.Format = "yyyy-MM-dd"
For c As Integer = 0 To nms.length -1
    Sheet(0, c).Value = caps(c)
Next
Dim k1,k2,k3,k4 As String
Dim idx As Integer = 0
For r As Integer = 0 To dt.Rows.Count - 1
    k1 = dt.rows(r)(nms(2))
    k2 = dt.rows(r)(nms(5))
    k3=""
    k4= Sheet(r + 0, 3).Value
    For c As Integer = 0 To nms.length -1
        Sheet(r+1,0).Style = st
        Sheet(r+1,c).Value = dt.rows(r)(nms(c))
    Next
    If k2 = "" Then
        Sheet(r + 1, 1).Value = k3                  '当K2的值为空时,值为空值
    Else
        idx += 1
        Sheet(r + 1, 1).Value = idx                  '当K2的值不为空时,值为当前行以上的列的最大值加1
    End If
    If k2 <> "" Then
        Sheet(r + 1, 3).Value = 1
    Else
        Sheet(r + 1, 3).Value = k4 + 1
    End If
    If k2 = "合格" Then
        Sheet(r + 1, 4).Value = k3
    End If
Next
Book.Sheets.RemoveAt(0) '删除第一个工作表
Book.Save("D:\质量管理系统\报工\整车下线质量日报.xls")
Dim Proc As New Process
Proc.File = "D:\质量管理系统\报工\整车下线质量日报.xls"
Proc.Start()


 回到顶部
总数 11 上一页 1 2