如果“B”列中的单元格值为A
或P
,则以下脚本会检查气泡图的每个点。
然后它应该将相应标记的形状更改为圆形(与之前相同,对于值A
)或菱形(对于值P
)。
它部分工作,因为我在直接窗口中得到正确的输出,但标记的形状仍然保持不变,为什么?
代码:
Sub format_chart()
Dim srs As Series
Dim cht As Chart
Set cht = Sheets("Diagramme").ChartObjects("Diagramm 1").Chart
For Each srs In cht.SeriesCollection
If Range("B" & Application.WorksheetFunction.Match(srs.Name, Sheets("Diagrammdaten").Range("a:a"), 0)).Value = "A" Then
srs.MarkerStyle = xlMarkerStyleDiamond
Debug.Print "Value is A"
ElseIf Range("B" & Application.WorksheetFunction.Match(srs.Name, Sheets("Diagrammdaten").Range("a:a"), 0)).Value = "P" Then
srs.MarkerStyle = xlMarkerStyleCircle
Debug.Print "Value is P"
Else: Debug.Print "You Failed!"
End If
Next srs
End Sub
答案 0 :(得分:1)
你的意思是泡泡图吗?据我所知,你不能改变气泡图中标记的形状。但是你可以用散点图来做到这一点。如果您的意思是散点图,请在行中设置:
srs.MarkerStyle = xlMarkerStyleDiamond
您为整个系列设定了市场风格。如果你想要改变单点的样式,你应该遍历srs.Points集合。