我是VBA的新手。目前我的项目需要我根据2个表数据自动绘制2个条形图来创建自动化工具,如下所示
然而,由于表数据是从另一个自动化工具生成的,因此行数可以增加或减少。行数可能多于/少于5,我无法通过指定单元格的地址来选择单元格,例如“A7”或“B6”。
这些是图表的预期输出:
希望某种善良的灵魂可以帮助我......
答案 0 :(得分:0)
我认为你不需要宏。 您只需要一些动态命名范围: Microsoft Support
并将数据范围设置为指定范围。
答案 1 :(得分:0)
如果给定工作表中的不同数据块由空行和列分隔,并且您想要的bloc是唯一包含单词“Date”的bloc,则可以使用简单的VBA例程来查找单词“Date” “,确定数据块位于其中,并使用该数据插入图表。如下所示:
Sub PlotRangeUsingFind()
Const SFind As String = "Date"
Dim rng As Range
On Error Resume Next
Set rng = ActiveSheet.Cells.Find(SFind).CurrentRegion
If Not rng Is Nothing Then
With ActiveSheet.Shapes.AddChart.Chart
.ChartType = xlColumnClustered
.SetSourceData rng
End With
End If
End Sub
您可以修改此项以查找数据块中的任何唯一字。它不一定是整个细胞的内容;例如,您可以根据截图使用“已接受”。