【发布时间】:2021-11-03 07:57:02
【问题描述】:
我需要修改 vba 上的代码,以便在 XY 图上进行标记。我有一个代码,当样本系列在水平位置共享时效果很好。但我有一个系列,实际上是由两个不同的系列组成,一个接一个地摆在桌子上。让我把它显示在图片上,这也显示了我的目标。
我使用的当前代码不适用于我的实际情况:
'Name macro
Sub AddDataLabels()
'Enable error handling
On Error Resume Next
'Display an inputbox and ask the user for a cell range
Set Rng = Application.InputBox(prompt:="Select cells to link" _
, Title:="Select data label values", Default:=ActiveCell.Address, Type:=8)
'Disable error handling
On Error GoTo 0
With ActiveChart
'Iterate through each series in chart
For Each ChSer In .SeriesCollection
'Save chart point to object SerPo
Set SerPo = ChSer.Points
'Save the number of points in chart to variable j
j = SerPo.Count
'Iterate though each point in current series
For i = 1 To j
'Enable data label for current chart point
SerPo(i).ApplyDataLabels Type:=xlShowValue
'Save cell reference to chart point
SerPo(i).DataLabel.FormulaLocal = Rng.Cells(i).FormulaLocal
'& rng.Cells(i).Reference(ReferenceStyle:=xlR1C1)
Next
Next
End With
End Sub
如果我为上述数据系列运行此代码,图表将如下所示:
那么如何修改此代码以获得目标图表,请帮助我。
【问题讨论】: