Excel图表:更改整个图表的字体名称也会导致不必要的字体大小更改

我有一个非常固执的问题与Excel图表。 看到附加的图像。 比方说,你有一个图表devise与所有的细节和各种不同的字体大小的元素。 在图表上应用新的字体实际上不仅会影响所有内部元素的字体名称,还会影响其大小。 所有元素都被制成相同的大小。 这是完全不需要的行为,完全是奇怪的。

是否有办法在全球范围内影响此行为(使用某些Excel或图表特定选项或类似方法)?

我需要通过VBA以编程方式执行此操作,但是如果也是手动尝试,也会发生这种情况。

这是我loggingmacros图表字体更改时捕获的代码。

Sub Macro1() ' ' Macro1 Macro ' ' With ActiveSheet.Shapes("Chart 1").TextFrame2.TextRange.Font .NameComplexScript = "Arial Narrow" .NameFarEast = "Arial Narrow" .Name = "Arial Narrow" End With End Sub 

之前:

之前

后

我只是想改变字体名称,但保持大小不变​​。 有任何想法吗?

我还没有testing过它的工作原理,但是如果你首先把TickLabels的字体大小保存在一个variables的数值轴上,然后在代码的末尾应用它。

 Sub test() Dim fontSize as double fontSize = ActiveSheet.Shapes("Chart1").Chart.Axes(xlValue).TickLabels.Font.Size ' Your code here ActiveSheet.Shapes("Chart1").Chart.Axes(xlValue).TickLabels.Font.Size = fontSize End Sub 

您将能够以相同的方式访问图表上的所有字体大小属性,并在您的代码之后应用它们。

这就是我的意见,但正如我所说,可能有一个更合格的解决scheme,我不知道它会起作用。