0

我有一些旧的 VB6 代码可以将形状添加到 Excel 图表中。

    ' add a label to display the results
    Set BoxShape = Chart.Shapes.AddLabel(1, ScaleToPointsX(series, x), ScaleToPointsY(series, y) - 20, 1, 1)
    BoxShape.TextFrame.Characters.Text = sText

这在某些机器上工作正常,但在其他机器上大小设置不正确。经调查,这似乎是因为 Autosize 属性并不总是默认为 True。

该代码已在各种版本的 Excel 上运行多年。我有两台电脑都运行 Excel 2007(完全相同的构建版本),其中一台工作正常(自动保存默认为 True),另一台没有出现形状(自动调整默认为 False)。有效的是Windows 7,无效的是Windows 10,但我怀疑这是问题所在。

我想我可以通过在创建形状时将 TextFrame.Autosize 显式设置为 True 来解决这个问题,但我很好奇是什么定义了这个值最初是如何设置的。Excel 中是否有一些全局设置会影响这一点?

4

0 回答 0