Foxtable(狐表)用户栏目专家坐堂 → 求助:图表格式设置


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

主题:求助:图表格式设置

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


加好友 发短信
等级:小狐 帖子:343 积分:3903 威望:0 精华:0 注册:2018/4/6 18:02:00
求助:图表格式设置  发帖心情 Post By:2019/8/2 1:13:00 [只看该作者]

各位老师:我借用代码在表中插入一个饼图,代码如下:

 

Dim App As New MSExcel.Application

    App.Visible = True

    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\2019年7月下线入库合格率统计.xls")

    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets("部门不良点统计")    '指定工作表

    Dim Rg As MSExcel.Range = Ws.Range("P6:P11")       '图表数据源

    Dim Co As MSExcel.ChartObject = Ws.ChartObjects.Add(100,200,400,250)   '创建图表对象

    Dim Cht As MSExcel.Chart = Co.Chart

    Cht.ChartType = MSExcel.XlChartType.xlPie          '图表类型

Cht.SetSourceData(Rg,MSExcel.XlRowCol.xlColumns)

    Cht.SeriesCollection(1).XValues = "=部门不良点统计!$C$6:$C$11"

Cht.Location(MSExcel.XlChartLocation.xlLocationAsObject, "部门不良点统计")   

现在我想要的效果: 1、在数据标识中,显示百分比,并显示类别名称。以下代码怎么改,请老师费心

   With Cht.SeriesCollection(1)             '返回图表中第1个系列

        .HasDataLabels = True                '显示第1个系列的数据标志

        .HasLeaderLines= True                '显示第1个系列的数据标志引导线

    End With

   我想要的效果:2、在底部显示图例。以下代码怎么改,请老师费心

    With Cht                                      '图例

         .HasLegend = True        '显示图例,

    End With

 

请各位老师费心,给指点一下,谢谢!


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/2 9:25:00 [只看该作者]

1、
ApplyDataLabels

将数据标志应用于图表中的某一数据点、某一数据系列或所有数据系列。本方法适用于Chart、Point或Series对象。

语法:

ApplyDataLabels(Type,LegendKey,AutoText,HasLeaderLines)
 

Type:可选,表示数据标志类型。可为下列XlDataLabelsType常量之一:

  • xlDataLabelsShowNone:无数据标志。
  • xlDataLabelsShowValue:数据点的值(若未指定本参数,即使用此设置)。
  • xlDataLabelsShowPercent:总数的百分比,仅用于饼图或圆环图。
  • xlDataLabelsShowLabel:数据点所属的分类,这是默认值。
  • xlDataLabelsShowLabelAndPercent:占总数的百分比及数据点所属的分类,仅用于饼图或圆环图。

LegendKey:若指定为 True,则在数据点旁边显示图例标示。默认值为False。
Autotext:可选。若指定为True,则对象基于上下文自动产生合适的文本。
HasleadersLines:可选,适用于Chart和Series对象。若指定为True,则序列有前导字符线。

例如对图表上的第一个数据系列应用分类标志:

Cht.SeriesCollection(1).ApplyDataLabels(MSExcel.TXlDataLabelsType.xlDataLabelsShowLabel)


2、


With Cht
    .HasLegend = True
    .Legend.Font.ColorIndex = 5

.Legend.Position = MSExcel.XlLegendPosition.xlLegendPositionBottom

End With


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


加好友 发短信
等级:小狐 帖子:343 积分:3903 威望:0 精华:0 注册:2018/4/6 18:02:00
  发帖心情 Post By:2019/8/2 20:09:00 [只看该作者]

谢谢蓝老师指点!


 回到顶部