Foxtable(狐表)用户栏目专家坐堂 → 报表中的零值的,怎样在报表中不显示


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

主题:报表中的零值的,怎样在报表中不显示

帅哥,在线噢!
cxmxjwlmq
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:349 积分:4166 威望:0 精华:0 注册:2018/4/6 18:02:00
报表中的零值的,怎样在报表中不显示  发帖心情 Post By:2018/7/7 13:12:00 [只看该作者]

各位老师:

    在数据库中有名为考核的一列,属性是数字,但并不是第一行的这一列都有考核,是空值,但导出报表时,根据类型,数字型的空值在报表上面返回“0”。

    求助:报表中显示"0"怎么用在导出报表按钮中用命令取掉,最像EXCLE中:不显示零值选项一样?

谢谢!


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180707115400.png
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 15:18:00 [只看该作者]

用的是什么报表,写了什么代码?

 回到顶部
帅哥,在线噢!
cxmxjwlmq
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:349 积分:4166 威望:0 精华:0 注册:2018/4/6 18:02:00
  发帖心情 Post By:2018/7/7 15:42:00 [只看该作者]

老师、代码如下:

Dim dt As Table = Tables("整车质量报表_table1")
Dim du As Table = Tables("整车质量报表_table2")
    Dim nms()  As String = {"日期","编号","代号","底盘号","发动机号","序号","不良描述","部门","检验岗","判定","检验","处罚","操作人","考核","预防措施"} '要导出的列名
    Dim caps() As String = {"日期","台数","代号","底盘号","发动机号","序号","不良描述","部门","检验岗","判定","检验员","考核","操作人","考核","原因分析及预防措施"}  '对应的列标题 
    Dim szs() As Integer = {90,55,50,85,100,45,350,40,60,60,60,40,70,40,550} '对应的列宽 
    Dim Book As New XLS.Book           '定义一个Excel工作簿 
        Book.Sheets.Add( status2 )     '增加一个工作表
        Book.Sheets.Add( status3 )     '增加一个工作表
    Dim Sheet As XLS.Sheet = Book.Sheets ( status2 )   '引用工作簿的第一个工作表
    Dim Sheet1 As XLS.Sheet = Book.Sheets( status3 )   '引用工作簿的第二个工作表
    Dim Style As XLS.Style = Book.NewStyle()           '定义新样式'样式为:有网格线,内容居中
        Style.BorderTop = XLS.LineStyleEnum.Thin
        Style.BorderBottom = XLS.LineStyleEnum.Thin
        Style.BorderLeft = XLS.LineStyleEnum.Thin
        Style.BorderRight = XLS.LineStyleEnum.Thin
        Style.BorderColorTop = Color.Black
        Style.BorderColorBottom = Color.Black
        Style.BorderColorLeft = Color.Black
        Style.BorderColorRight = Color.Black
        Style.AlignHorz = XLS.AlignHorzEnum.Center     '水平居中
        Style.AlignVert = XLS.AlignVertEnum.Center     '垂直居中

。。。。。省略了

    For c As Integer = 0 To nms.length -1
        If dt.cols(nms(c)).isdate Then
            If dt.rows(r)(nms(c)) = Nothing Then    '依据条件调用日期数据区域样式
                Sheet(r + 3, c).Style = bt
            Else
                Sheet(r + 3, c).Style = st
            End If
            Sheet(r + 3, c).Value = dt.rows(r)(nms(c)) '填入日期数据
        End If
        '部分区域单元格调用样式命令
        Sheet(r + 3, c + 1).Style = Style          '从第三行第二列开始调用新样式:居中,带边框
        Sheet(r + 3, 6).Style = ct                 '从第三行第14列开始调用新样式:居左,带边框
        Sheet(r + 3, 14).Style = ct                '从第三行第15列开始调用新样式:居左,带边框
        Sheet(r + 3, 15).Style = bt                '从第三行第16列开始调用新样式:居左,无边框
        Sheet(r + 3, c).Value = dt.rows(r)(nms(c)) '填入数据
    Next

。。。。省略了

   Book.Sheets.RemoveAt(0) '删除第一个工作表
   Book.Save( status4 )   ‘调用设置的变量命名保存的表
   Dim Proc As New Process
   Proc.File = status4   ’打开表
   Proc.Start()

老师你费心看看!


 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/7 16:06:00 [只看该作者]

Sheet(r + 3, c).Value = dt.rows(r)(nms(c)) '填入数据
if Sheet(r + 3, c).Value = "0" then Sheet(r + 3, c).Value = ""

 回到顶部
帅哥,在线噢!
cxmxjwlmq
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:349 积分:4166 威望:0 精华:0 注册:2018/4/6 18:02:00
  发帖心情 Post By:2018/7/7 17:38:00 [只看该作者]

谢谢老师指点!


 回到顶部