excel - 添加新数据系列更改 Excel 2016 图表格式
问题描述
我正在向我拥有的图表添加一个新系列,并且 Excel 2016 (Windows 10) 会自动更改格式。我是一个非常有经验的用户,不记得曾经遇到过这个问题。这是任何更改之前的图表:
这是当我添加另一个价格系列时发生的情况(与图表上的股价相同的日期,但已根据股息进行了调整):
我尝试转到选项/高级/图表并取消选择“属性跟随所有新工作簿的图表数据点”和“属性跟随当前工作簿的图表数据点” - 没有帮助。
如果我打开我的 Visual Basic 编辑器并单击“ThisWorkbook”,ChartDataPointTrack 确实被选择为“False”。
那么我在这里错过了什么?
额外信息#1:
考虑到关于数据样本的“Terry W”问题,为了避免在这里倾倒太多信息,我将描述它们是什么(我认为这不是问题,因为数据没有什么特别之处;所有系列都是散点图):
- 股价是可口可乐 [KO] 的每日股价。最初的系列是任何人每天看到的常规股价,我添加的系列是“调整后的价格”(即根据股息调整的历史股价)。
- 红色/浅红色的历史点是季度收益(年化) - 所以没有很多数据
- 未来的点每年只有一个 - 所以数据很少
额外信息#2:
我注意到在添加新系列时(通过 [i] 右键单击图表,[ii] 单击“选择数据...”和 [iii] 单击“添加”)但限制添加的天数,格式成立!请参见下图:我添加了 2,000 天的数据,而其他价格系列的数据为 5,500 天。
我可以毫无问题地使用长达 4,000 天。一旦我使用“5000”,它就改变了格式。我所说的“已使用”是指更改下方窗口中叠加到图表上的参考:
额外信息#3:
正如您所注意到的,我的图表采用深色格式。这是因为我在电子表格上工作了很长时间,而深色格式对我疲倦的眼睛更加温和(我在这里发布了一个我写的让电子表格变暗的宏)。在将一些图表转换为深色格式时,我可以使用如下所示的宏。我不确定这个特定图表是否是这种情况,但还是决定添加代码,以防它帮助某人解开谜团:
Dim s_name As String
For Each Shape In ActiveSheet.Shapes
s_name = Shape.Name
' Format all charts to style #209
If Shape.Type = msoChart Then
ActiveSheet.ChartObjects(s_name).Activate
ActiveChart.ClearToMatchStyle
ActiveChart.ChartStyle = 209
ActiveSheet.Shapes(s_name).ZOrder msoSendToBack
End If
解决方案
我在将系列添加到图表的宏中遇到了类似的问题。我的问题原来是我在添加新系列之前将图表类型设置为 xlXYScatter。这是将图表上已有的系列格式重置为该类型的默认值,这不是我想要的。就我而言,保留图表类型并在宏中明确设置新系列的格式可以解决问题。虽然原始发布者的情况并没有发生这种情况,但我想知道跨越数据系列阈值是否会隐式更改图表类型。
推荐阅读
- php - 如何在类内的多维数组中插入变量
- c++ - 在 C++ 中的继承类中声明构造函数时出错
- python - flask python - 提取在 post 方法中发送的 json 数据
- prolog - 可以使用 head 变量作为主体中的函子名称吗?
- ibm-cloud - 在 Watson Dialog 响应中显示实体的所有同义词
- c++ - 将回调函数指针传递给另一个类中的函数
- spring-boot - 在 Expo 上上传 FormData
- html - CSS:使用“背景剪辑:文本”和线性渐变的浏览器兼容性问题
- solr - 在 solr 中使用多个 rerank 查询
- faunadb - 如何通过多个条件查询动物区系数据库?