Foxtable(狐表)用户栏目专家坐堂 → 用帮助中的vba生成excel图表,如何才能设置图例


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

主题:用帮助中的vba生成excel图表,如何才能设置图例

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
用帮助中的vba生成excel图表,如何才能设置图例  发帖心情 Post By:2014/5/9 10:06:00 [只看该作者]

各位老师好,我在做销售日报表,一年有365天,狐表自带的图表宽度不够,用了帮助的VBA与EXCEL这节写了如下代码:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)'指定工作表
Dim Rg As MSExcel.Range = Ws.Range("b2:c27")  '图表数据源
ws.ChartObjects.Delete'删除工作表上已经存在的图表
Dim Co As MSExcel.ChartObject = Ws.ChartObjects.Add(160,0,1000,250)   '创建图表对象
Dim Cht As MSExcel.Chart = Co.Chart
Cht.ChartType = MSExcel.XlChartType.xlLineMarkers'图表类型
Cht.SetSourceData(Rg,MSExcel.XlRowCol.xlColumns) '指定数据源和绘图方式
Cht.HasTitle = True
Cht.ChartTitle.Text = "测试图表标题"
With Cht.ChartTitle.Font   '设置标题字体
    .Size = 16
    .ColorIndex = 3
    .Name = "隶书"
End With
With Cht
    .HasLegend = True
    .Legend.Font.ColorIndex = 5 
End With
App.Visible = True

 

但是图例是 系列1、系列2,而不是列的标题,不知道怎么设置:

 

 


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

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2014/5/9 10:11:00 [只看该作者]

哦,知道了,数据源区域改成这样就可以了:Dim Rg As MSExcel.Range = Ws.Range("a2:c27")  '图表数据源

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


加好友 发短信
等级:一尾狐 帖子:424 积分:5121 威望:0 精华:0 注册:2012/11/16 8:21:00
  发帖心情 Post By:2019/6/11 11:50:00 [只看该作者]

老师,我也想过这种方式,但是我想在点上加上固定显示的数值,有办法吗?
我看只能是Series.DataLabelText = "{#YVAL}"
还有我显示图例Chart.LegendVisible=True,用这种方式显示的是0之类的数字,不是汉字
[此贴子已经被作者于2019/6/11 11:50:09编辑过]

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


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

 

回复3楼,具体实例发上来测试。


 回到顶部