首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >excel宏-折线图丢失年份轴值和图表标题

excel宏-折线图丢失年份轴值和图表标题
EN

Stack Overflow用户
提问于 2016-04-20 15:01:06
回答 1查看 73关注 0票数 0

我正在使用Excel 2013记录宏,以创建折线图。

我有一个包含年份的列和一个相邻的包含人口值的列。列标题分别是“年份”和“人口”。

折线图看起来不错。

当我运行宏时,图表标题(人口)被去掉。此外,年值(x轴)被替换为数字系列1。。。继续前进

如何让宏保留年份值和图表标题(人口)?

谢谢!

这是我录制的宏

代码语言:javascript
复制
Range("A1:B29").Select 
ActiveWindow.WindowState = xlMaximized 
ActiveSheet.Shapes.AddChart2(227, xlLineMarkers).Select
ActiveChart.SetSourceData Source:=Range("compilation!$A$1:$B$29")

这是我想要的最终图形在运行宏时的样子的一个示例。

EN

回答 1

Stack Overflow用户

发布于 2016-04-20 21:37:30

将以下行添加到宏的最后一行

代码语言:javascript
复制
ActiveChart.FullSeriesCollection(1).XValues = "=compilation!$A$2:$A$29"

这应该会让你的一年回到谷底。

代码语言:javascript
复制
ActiveChart.SetElement (msoElementChartTitleAboveChart)
ActiveChart.ChartTitle.Select
Selection.Caption = "=compilation!R1C2"

这将为您设置头衔。然而,你仍然需要你的主要水平标题,所以为什么我们不加入这个tid随机代码:

代码语言:javascript
复制
ActiveChart.Axes(xlCategory).Select
ActiveChart.SetElement (msoElementPrimaryCategoryAxisTitleAdjacentToAxis)
Selection.Caption = "=compilation!R1C1"

现在唯一悬而未决的问题是,如果你在你的图表中生成1条或2条线。

为了去掉第二行(从技术上讲是第一行,因为它是真正的系列1),我们有两个选择。

选择1是用代码选择它,然后删除它。不过,我还是会选择第二个选项。第二种选择是从一开始就不要添加它!

因此,首先要消除你的宏的第一行。当最初创建图形时,由于没有预先选择的数据,它将被创建为空白石板。所以我们需要做的是在定义Source的宏行中更改1个字母。(你发布的代码的第四行),我们将把起始单元格的引用从$A$1改为$B$1。如果图形只有一列数据来处理点,那么只能有一个系列。因此,该行的末尾将如下所示:

代码语言:javascript
复制
ActiveChart.SetSourceData Source:=Range("compilation!$B$1:$B$29")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36736151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档