更改选定图表的边框颜色

Changing Selected Chart's Border Color

如果我录制一个Excel宏来改变图表的边框颜色,那么VBAreturns

Sub change_bordercolor()
    With ActiveSheet.Shapes("Chart 1").Line
        .Visible = msoTrue
        .ForeColor.RGB = RGB(0, 0, 0)
        .Transparency = 0
    End With
End Sub

所以我想编写代码来更改边框颜色,而不是 "Chart 1" 而是当前选定图表的边框颜色,如下所示。

Sub change_bordercolor()
    Selection.ShapeRange.Line.ForeColor.RGB = RGB(0, 0, 0)
End Sub

但是这个returns 438 运行时错误。我需要在哪里更改以使用 Selection 而不是 "Chart 1?"

要更改您必须选择的活动图表的边框颜色,您可以使用此代码:

Sub Macro1()

If Application.ActiveChart Is Nothing Then Exit Sub


With ActiveSheet.Shapes(Replace(Application.ActiveChart.Name, ActiveSheet.Name & " ", "")).Line
    .Visible = msoTrue
    .ForeColor.RGB = RGB(0, 255, 0)
    .Transparency = 0
End With

End Sub

我已将其设置为将边框颜色更改为绿色,但您可以根据需要进行调整。它是这样工作的:

它更改 活动选定图表的边框颜色

这里有一个更简单的方法:

Sub ChangeBorderColor()
  If Not ActiveChart Is Nothing Then
    With ActiveChart.ChartArea.Format.Line
      .Visible = msoTrue
      .ForeColor.RGB = RGB(0, 0, 0)
      .Transparency = 0
    End With
  End If
End Sub