首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将两个图表合并为一个图表的VBA代码

可以使用以下代码实现:

代码语言:vba
复制
Sub MergeCharts()
    Dim ws As Worksheet
    Dim cht1 As ChartObject
    Dim cht2 As ChartObject
    Dim chtCombined As ChartObject
    Dim rng1 As Range
    Dim rng2 As Range
    Dim rngCombined As Range
    
    ' 设置工作表
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    
    ' 设置图表对象
    Set cht1 = ws.ChartObjects("Chart1")
    Set cht2 = ws.ChartObjects("Chart2")
    
    ' 设置图表的数据范围
    Set rng1 = ws.Range("A1:B10")
    Set rng2 = ws.Range("C1:D10")
    
    ' 创建新的图表对象
    Set chtCombined = ws.ChartObjects.Add(Left:=cht1.Left, Top:=cht1.Top, Width:=cht1.Width, Height:=cht1.Height)
    
    ' 设置新图表的数据范围
    Set rngCombined = ws.Range("E1:F10")
    rngCombined.Value = Application.Union(rng1, rng2).Value
    
    ' 设置新图表的位置
    chtCombined.Left = cht1.Left
    chtCombined.Top = cht1.Top
    
    ' 设置新图表的大小
    chtCombined.Width = cht1.Width
    chtCombined.Height = cht1.Height
    
    ' 设置新图表的图表类型
    chtCombined.Chart.ChartType = cht1.Chart.ChartType
    
    ' 设置新图表的标题
    chtCombined.Chart.HasTitle = True
    chtCombined.Chart.ChartTitle.Text = "Combined Chart"
    
    ' 删除原有的图表
    cht1.Delete
    cht2.Delete
End Sub

这段VBA代码可以将两个图表(Chart1和Chart2)合并为一个新的图表,并将合并后的数据范围设置为E1:F10。新图表的位置、大小、图表类型和标题可以根据需要进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券