在excel中如何用VBA给图表添加坐标轴标题,或者给多个图表添加相同的横轴标题?

如题所述

Sub 宏()
Dim co As ChartObject
  i=0
    For Each co In ActiveSheet.ChartObjects '处理当前工作表中所有的图表
        i=i+1
        co.Chart.Axes(xlCategory).HasTitle = True '显示横轴标题
        co.Chart.Axes(xlCategory).AxisTitle.Text =cells(i,1) '请修改为统一标题内容
    Next co
End Sub

借用一百℃猪高手的代码修改下,未运行仅供测试。

横轴标题

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-12
Sub 宏()
Dim co As ChartObject

    For Each co In ActiveSheet.ChartObjects '处理当前工作表中所有的图表
        co.Chart.Axes(xlValue).HasTitle = True '显示横轴标题
        co.Chart.Axes(xlValue).AxisTitle.Text = "标题" '请修改为统一标题内容
    Next co
End Sub

追问

这个运行以后是纵轴的啊,我要的是横轴的,请问怎么改一下?

追答

失误失误,^_^

Sub 宏()
Dim co As ChartObject
 
    For Each co In ActiveSheet.ChartObjects '处理当前工作表中所有的图表
        co.Chart.Axes(xlCategory).HasTitle = True '显示横轴标题
        co.Chart.Axes(xlCategory).AxisTitle.Text = "标题" '请修改为统一标题内容
    Next co
End Sub

追问

如果想进一步把横坐标标题修改为某个单元格的内容呢,麻烦了。我在提高悬赏

追答Sub 宏()
Dim co As ChartObject
    For Each co In ActiveSheet.ChartObjects '处理当前工作表中所有的图表
        co.Chart.Axes(xlCategory).HasTitle = True '显示横轴标题
        co.Chart.Axes(xlCategory).AxisTitle.Text = Worksheets("工作表名称").Range("指定单元格" '请修改为实际的工作表单元格
    Next co
End Sub

本回答被网友采纳
相似回答