【发布时间】:2020-01-31 00:07:38
【问题描述】:
如何将四个图表对象放置在具有四个数据集范围的单个 Excel 图表中?
我在图表表中创建所有四个图表。我正在努力调整第一个图表对象的大小,因为它看起来图表大小是固定的。
如果我在图表工作表中创建图表,它会是固定大小,适合整个屏幕吗?
另外,我尝试使用图表索引选择每个图表,但第一个图表对象没有索引,导致四个图表对象中仅获得三个索引。
该代码不起作用,因为第二个导入图表将是索引 1,它与 ForLoop 索引不匹配。
For i = 1 To cnt_dataset - 1
Range((Cells(data_array(i, 1), 21)), (Cells(data_array(i, 2), 22))).Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlLine
ActiveChart.ApplyLayout (10)
ActiveChart.ChartGroups(1).HiLoLines.Select
Selection.Delete
If i = 1 Then
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Chart"
Else
ActiveChart.Location Where:=xlLocationAsObject, Name:="Chart"
ActiveSheet.ChartObjects(i).Activate
End If
With ActiveChart
.ChartTitle.Text = "Chart A"
.Axes(xlValue, xlPrimary).AxisTitle.Text = "y"
.Axes(xlCategory, xlPrimary).AxisTitle.Text = "x"
.Axes(xlCategory).Select
End With
Selection.TickLabels.NumberFormat = "#,##0"
ActiveWindow.WindowState = xlMaximized
Next i
【问题讨论】:
-
我刚刚在谷歌上搜索了“vba activechart size location”,这是第一个结果...peltiertech.com/Excel/ChartsHowTo/ResizeAndMoveAChart.html
-
如果我将图表对象作为新工作表移动,则不会出现网站中似乎未提及的图表索引。请随时纠正我。谢谢。
-
如果你阅读这篇文章并滚动浏览它,它会显示如何
resize和reposition图表.. 还有如何CoverRangeWithAChart。失败了,您可以“始终录制宏以了解如何做某事”。 -
如果命令 'ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Chart"' 被执行,图表移动到新的图表工作表,然后我什至不能再手动调整图表大小了.如果我重新解决它,这就是我的观点..