以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- Excel报表如何导出图片? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=52773) |
||||
-- 作者:1234567 -- 发布时间:2014/6/23 8:45:00 -- Excel报表如何导出图片? 如果是图片列,在用Excel报表 导出数据 时,怎么处理? |
||||
-- 作者:Bin -- 发布时间:2014/6/23 8:47:00 -- http://www.foxtable.com/help/topics/1845.htm |
||||
-- 作者:1234567 -- 发布时间:2014/6/23 8:52:00 -- 导出数据 虽然Foxtable已经有导出Excel的功能,但是不够灵活。 例如下面的代码,导出订单表,用红色背景标出折扣超过0.15的单元格: Dim dt As Table = Tables("订单")Dim Book As New XLS.Book \'定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表 Dim Style As Xls.Style = Book.NewStyle \'新建一个样式 Style.BackColor = Color.Red \'样式的背景颜色设为红色 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)("折扣") >= 0.15 Then \'如果折扣大于等于0.15 Sheet(r + 1,dt.Cols("折扣").Index).Style = Style \'设置折扣单元格的样式 End If Next \'打开工作簿 Book.Save("c:\\reports\\test.xls") Dim Proc As New Process Proc.File = "c:\\reports\\test.xls" Proc.Start() ![]() ![]() |
||||
-- 作者:Bin -- 发布时间:2014/6/23 8:53:00 -- 看2楼帮助 第二个 |
||||
-- 作者:1234567 -- 发布时间:2014/6/23 10:12:00 -- Sheet(10,2).Value = New XLS.Picture(GetImage("c:\\Foxtable.Ico")) 每个单元格必须一一指定文件路径吗,不能象产品列一样直接从 Tables("订单") 中导出吗? |
||||
-- 作者:Bin -- 发布时间:2014/6/23 10:14:00 -- 表中的行不就是存放着路径么 |
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 10:15:00 -- 回复5楼,你根据表的路径,加上defaultFolder,就得到图片的完整路径了,那就能直接得到图片了。
之后,你赋值即可。
http://www.foxtable.com/help/topics/2043.htm
|
||||
-- 作者:1234567 -- 发布时间:2014/6/23 11:36:00 -- 还是没搞懂,版主帮我改一下代码。
|
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 11:43:00 -- 类似这样写
Dim dt As Table = Tables("订单") |
||||
-- 作者:1234567 -- 发布时间:2014/7/1 10:36:00 -- Sheet(r +1, c).Value = New XLS.Picture(GetImage(path)) 插入图片的左边距,上边距,高度,宽度怎么设定? |