在图表VBA中添加字幕

时间:2015-08-04 16:23:20

标签: excel-vba vba excel

有没有办法使用VBA插入文本作为我的图表实际标题下的“副标题”?我想引用单元格“N21”中的输入作为我的字幕文本。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

虽然我不确定改变字体大小,但这些方面的内容可以帮助你解决问题。

ThisWorkbook.Sheets("Sheet1").ChartObjects(2).Activate
With ActiveChart
    .HasTitle = True
    .ChartTitle.Characters.Text = "new title" & Chr(10) & Range("C3").Value
End With

Chr(10)是你回来的新行。

答案 1 :(得分:0)

根据Ditto提出的一个很好的建议,这里是一个VBA子程序,它为现有图表添加了一个字幕,其中包含一个现有标题,以及一个显示如何调用它的测试程序。

Sub AddSubtitle(Ch As Chart, subtitle As String, Optional fontsize As Long = 12)
    Dim NewTitle As String
    Dim i As Long, n As Long
    Dim CT As ChartTitle

    Set CT = Ch.ChartTitle
    NewTitle = CT.Text
    NewTitle = NewTitle & Chr(13)
    i = 1 + Len(NewTitle)
    NewTitle = NewTitle & subtitle
    n = Len(subtitle)
    CT.Text = NewTitle
    CT.Format.TextFrame2.TextRange.Characters(i, n).Font.Size = fontsize

End Sub

Sub test()
    Dim myChart As Chart
    Set myChart = ActiveSheet.ChartObjects(1).Chart
    AddSubtitle myChart, "Subtitle", 10
End Sub