如何使用VBA获取图表主坐标轴最大值并写入其他工作表单元格
VBA实现提取图表主坐标轴最大值并写入指定单元格
以下代码适配「独立图表工作表(整个工作表为图表,非嵌入到普通工作表的图表)」场景,复制到VBA编辑器(按Alt+F11可打开)的模块中,修改对应参数后即可运行:
Sub GetPrimaryAxisMaxValue() Dim chartSheet As Chart Dim targetWs As Worksheet Dim maxVal As Double ' 替换为你的图表工作表名称 Set chartSheet = ThisWorkbook.Charts("你的图表工作表名") ' 替换为你要写入数值的目标工作表名称 Set targetWs = ThisWorkbook.Worksheets("目标工作表名") ' 读取主数值纵轴(Y轴)的最大值 maxVal = chartSheet.Axes(xlValue, xlPrimary).MaximumScale ' 替换为你要写入的目标单元格地址 targetWs.Range("A1").Value = maxVal End Sub
自定义调整说明
- 如需提取主水平坐标轴(X轴)的最大值,将代码中的
xlValue替换为xlCategory即可 - 如果你的图表是嵌入到普通工作表内的嵌入式图表,替换获取图表对象的代码即可:
' 括号内依次替换为「图表所在的工作表名」「嵌入式图表的名称」 Set chartSheet = ThisWorkbook.Worksheets("数据所在工作表名").ChartObjects("图表 1").Chart
注意:即使你的坐标轴最大值为Excel自动计算生成,无需手动设置固定值,代码也可以正常读取到当前生效的最大值。
内容的提问来源于stack exchange,提问作者Josh
相关产品推荐
相关产品推荐

