【问题标题】:Create charts using dynamic ranges使用动态范围创建图表
【发布时间】:2015-10-22 21:56:17
【问题描述】:

我在 Excel 中使用 VBA 创建使用动态范围的图表时遇到了一些问题。我需要做的是绘制每个样品的每种化合物的结果。样品的数量和化合物的数量都可以变化。可以在here 找到数据表的示例。

我尝试编写的代码示例,但是我的范围没有正确定义:

Sub Graph()

Dim r As Range
Dim c As Range
Dim wks As Worksheet

Set wks = ActiveSheet

'
' Graph Macro
'
Set r = Range("B2").End(xlDown)
Set c = Range("D2").End(xlToRight)

ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
ActiveChart.SetSourceData Source:=Range("wks!$B$2:B" & r, "wks!$P$2:P" & c)
'

End Sub

谁能指出我正确的方向?

【问题讨论】:

    标签: excel vba charts


    【解决方案1】:

    试试这个子:

    Sub Graph()
        ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
        With [a1].CurrentRegion
            ActiveChart.SetSourceData Source:=Range(.Resize(, 1).Offset(, 1), .Offset(, 3).Resize(, .Columns.Count - 3))
        End With
    End Sub
    

    【讨论】:

    • 这非常有效。定义图表区域的非常优雅的方式。
    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多