Foxtable(狐表)用户栏目专家坐堂 → 关于excel如何才能导出自定义的样式


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

主题:关于excel如何才能导出自定义的样式

帅哥哟,离线,有人找我吗?
冰淇淋小子
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:182 积分:1306 威望:0 精华:0 注册:2012/3/27 11:54:00
  发帖心情 Post By:2016/3/14 17:32:00 [只看该作者]

大红袍就帮帮我写一下吧。

内存2G红色加粗
生产日期 2008.2009.2010  红色加粗
使用年限包括5年,5年以后  红色加粗

过保 加粗


公共设施   离职 背景色


我新手,的确不太会


导出后是当前日期南京徳亨文生物科技有限公司设备一览表

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/14 18:08:00 [只看该作者]

Dim dt As Table = Tables("南京徳亨文生物科技有限公司设备一览表")
Dim Book As New XLS.Book '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
sheet.name = "abc"

Dim Style As Xls.Style
style = Book.NewStyle '新建一个样式
Style.ForeColor = Color.Red
style.FontBold = True '样式的背景颜色设为红色
Dim Style1 As Xls.Style
style1 = Book.NewStyle '新建一个样式
Style1.BackColor = Color.yellow
style1.BorderBottom = XLS.LineStyleEnum.Thin
style1.Bordertop = XLS.LineStyleEnum.Thin
style1.Borderleft = XLS.LineStyleEnum.Thin
style1.Borderright = XLS.LineStyleEnum.Thin

style1.FontBold = True '样式的背景颜色设为红色

For c As Integer = 0 To dt.Cols.Count -1 '添加列标题
    Sheet(0, c).Value = dt.Cols(c).Name
Next
For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
    For c As Integer = 0 To dt.Cols.Count -1
        Sheet(r +1, c).Value = dt.rows(r)(c)
    Next
   
   
    If dt.Rows(r)("中心") = "公共设施" OrElse dt.Rows(r)("中心") = "离职" Then
        For c As Integer = 0 To dt.Cols.Count -1
            Sheet(r +1, c).style = style1
        Next
    End If
    If dt.rows(r)("内存") =  "2G"  Then '如果折扣大于等于0.15
        Sheet(r + 1,dt.Cols("内存").Index).Style = Style '设置折扣单元格的样式
    End If
    If dt.Rows(r)("生产日期").year = 2008 OrElse dt.Rows(r)("生产日期").year = 2008 OrElse dt.Rows(r)("生产日期").year = 2008 Then
        Sheet(r + 1,dt.Cols("生产日期").Index).Style = Style '设置折扣单元格的样式
    End If
    If dt.Rows(r)("使用年限") / 365 >= 5 Then
        Sheet(r + 1,dt.Cols("使用年限").Index).Style = Style '设置折扣单元格的样式
    End If
    Dim d As Double = dt.Rows(r)("使用年限")
    Sheet(r + 1,dt.Cols("使用年限").Index).value = d \ 365 & "年" & (d Mod 365) \ 30 & "月"
   
Next

book.Save("d:\test.xls")
Dim proc As new Process
proc.File = "d:\test.xls"
proc.Start


 回到顶部
帅哥哟,离线,有人找我吗?
冰淇淋小子
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:182 积分:1306 威望:0 精华:0 注册:2012/3/27 11:54:00
  发帖心情 Post By:2016/3/14 19:41:00 [只看该作者]

谢谢

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