我用VBA创建一个excel图表,然后格式化轴标题和字体的大小。以下代码适用于水平轴
set arrow from graph 0.5, graph 1 to second 1, second 2 head
但是,垂直轴的类似代码
cht.SetElement msoElementPrimaryCategoryAxisTitleAdjacentToAxis
cht.Axes(xlCategory, xlPrimary).AxisTitle.Text = "Factor of Safety"
cht.Axes(xlCategory, xlPrimary).AxisTitle.Format.TextFrame2.TextRange.Font.Size = 15
导致错误424“需要对象”。你能告诉我发生了什么事吗?
答案 0 :(得分:0)
在最新版本的Excel中,可以将SetElement
与命名常量一起使用,以向图表中添加要素。 似乎容易些,但实际上却不那么直观,而且可能不可靠。
所以代替这个:
cht.SetElement msoElementPrimaryValueAxisTitleAdjacentToAxis
cht.Axes(xlValue, xlPrimary).AxisTitle.Text = "Depth [mCD]"
cht.Axes(xlValue, xlPrimary).AxisTitle.Format.TextFrame2.TextRange.Font.Size = 15
执行此操作:
cht.Axes(xlValue, xlPrimary).HasTitle = True
cht.Axes(xlValue, xlPrimary).AxisTitle.Text = "Depth [mCD]"
cht.Axes(xlValue, xlPrimary).AxisTitle.Format.TextFrame2.TextRange.Font.Size = 15
答案 1 :(得分:0)
扩展 Jon Peltier 答案的另一个答案:
Charts.Add
With ActiveChart
.Axes(xlValue, xlPrimary).HasTitle = True ' must set outside with
With .Axes(xlValue, xlPrimary)
.AxisTitle.Text = "Depth [mCD]"
.AxisTitle.Format.TextFrame2.TextRange.Font.Size = 15
End With
End With