如何使用VBA更改Excel图表中的数据标签宽度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用VBA更改Excel图表中的数据标签宽度?相关的知识,希望对你有一定的参考价值。

我想通过VBA代码更改Excel图表中的标签宽度:

set lbl = SERIES1. points(1).datalabel
msgbox lbl.width 'this is working

lbl.width = 40 ' compile error: wrong number of arguments or invalid property assignment

我可以获得标签宽度但不能更改它。我究竟做错了什么?

答案

AFAIK,图表数据点标签的宽度不可配置。即使可以使用VBA检索宽度,也无法使用VBA命令或属性设置或更改它。

根据文档,DataLabels.Width属性是只读的。

Returns the width, in points, of the object. Read-only. Source

Excel图表标签仍然固执地不合作,并且无论是使用VBA还是使用UI,都会阻止格式化尝试。

那是(不幸的)Excel的工作原理。

不要射击信使。

如果你想要有所作为,可以考虑在excel.uservoice.com提出一个想法

另一答案

这适用于Excel 2016,您只需调整系列集合和点数即可满足您的需求。 ActiveChart.FullSeriesCollection(1).Points(1).DataLabel.Width = 363.314

以上是关于如何使用VBA更改Excel图表中的数据标签宽度?的主要内容,如果未能解决你的问题,请参考以下文章

VBA 在 Outlook 中粘贴带有图表的特定 excel 范围

如何用VBA将excel中的数据转化成word文档

如何利用EXCEL VBA将一列数据中不重复的数据读取到数组中?

Excel中的标签排序,VBA语法问题

Excel VBA代码将SSRS数据作为数据集提取

07版EXCEL中的图表如何增加图例