以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]求助狐爸,通过图表生成的Excel报表怎么不清楚  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=105467)

--  作者:武游天下
--  发布时间:2017/8/20 9:42:00
--  [求助]求助狐爸,通过图表生成的Excel报表怎么不清楚
[求助]求助狐爸,通过图表生成的Excel报表怎么不清楚,如图,圆饼图太模糊了,能让它清楚一下吗?
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170820093719.bmp
图片点击可在新窗口打开查看
一下是代码
Dim b As New XLS.Book
Dim t As Table = Tables("年龄区间统计表")
Dim s As XLS.Sheet = b.Sheets(0)
Dim Chart As WinForm.Chart = Forms("年龄统计").Controls("Chart1")
For c As Integer = 0 To t.Cols.Count -1 \'添加列标题
 s(0, c).Value = t.Cols(c).Name
Next
For r As Integer = 0 To t.Rows.Count - 1 \'填入数据
 For c As Integer = 0 To t.Cols.Count -1
 s(r +1, c).Value = t.rows(r)(c)
 Next
Next
\'插入图表
s(t.rows.Count + 2,1).Value = New XLS.Picture(Chart.Image,0,0,450,250)
b.Save("c:\\reports\\年龄统计.xls")
Dim Proc As New Process
Proc.File = "c:\\reports\\年龄统计.xls"
Proc.Start()
[此贴子已经被作者于2017/8/20 9:43:31编辑过]

--  作者:有点甜
--  发布时间:2017/8/20 13:01:00
--  

要换一种方法,如下

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
ws.name = "test"
Dim Chart As WinForm.Chart = e.form.Controls("Chart1")
chart.SaveImage("d:\\test.wmf")
ws.Shapes.AddPicture("d:\\test.wmf", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue,0, 0, 100, 80)

app.visible = true


--  作者:武游天下
--  发布时间:2017/8/20 15:19:00
--  把代码换成你说的那种,但报错
把代码换成你说的那种,但报错
--  作者:有点甜
--  发布时间:2017/8/20 15:24:00
--  
以下是引用武游天下在2017/8/20 15:19:00的发言:
把代码换成你说的那种,但报错

 

贴出你写的代码。


--  作者:武游天下
--  发布时间:2017/8/20 16:26:00
--  就是你上面给我说的那个
就是你上面给我说的那个
--  作者:有点甜
--  发布时间:2017/8/20 16:29:00
--  

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
ws.name = "test"
Dim Chart As WinForm.Chart = Forms("年龄统计").Controls("Chart1")
chart.SaveImage("d:\\test.wmf")
ws.Shapes.AddPicture("d:\\test.wmf", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue,0, 0, 100, 80)

app.visible = true