Excel 그래프: 사용자 정의 변수 선 두께에 대한 매크로

Excel 그래프: 사용자 정의 변수 선 두께에 대한 매크로

그래프에 여러 데이터 계열이 있고 그래프의 약 55개 선 각각이 내 선택에 따라 서로 다른 두께를 갖기를 원합니다. 한 번에 모든 선의 두께를 조정하는 다음 매크로를 보았습니다.

Sub SetWeights()
    Dim srs As Series
    For Each srs In ActiveSheet.ChartObjects("Chart 1").Chart.SeriesCollection
        srs.Format.Line.Weight = 0.75
    Next
End Sub
  1. Excel 워크시트의 열 중 하나에 정의된 대로 각 선의 두께가 서로 다르게 되도록 하는 방법(매크로)이 있습니까?

  2. 선 색상과 마커 유형을 한 번에 변경하는 유사한 방법이 있습니까(각 선마다 다른 마커가 필요하지 않음)?

답변1

예, 선 두께와 색상의 형식을 지정할 수 있습니다.

이 코드는 계열 2의 형식을 지정해야 합니다.

Sub SetWeights()
ActiveChart.SeriesCollection(2).Select
With Selection.Format.Line
    .Visible = msoTrue
    .ForeColor.RGB = RGB(107, 197, 135)
    .Weight = 1
End With
End Sub

각 시리즈를 반복하고 매번 다른 색상과 무게를 읽도록 코드를 수정할 수 있습니다.

다음과 같은 줄을 추가하여 마커 유형을 변경할 수 있습니다.

.MarkerStyle = -4142

마커 스타일 옵션은 다음과 같습니다. https://msdn.microsoft.com/en-us/vba/excel-vba/articles/series-markerstyle-property-excel

답변2

좋습니다. 다음 매크로는 (다음에서 가져옴)https://stackoverflow.com/questions/32437999/auto-adjust-excel-chart-line-weights-with-a-loop) 내 원래 질문에 답변합니다.

Sub SetWeights()
    Dim Srs As Series
    Dim myWeight As Range
    Dim £w As Range
    Dim j As Long

    Set myWeight = Range("Weights")

    j = 1

    With ActiveSheet
        For Each £w In myWeight
            If j > ActiveChart.SeriesCollection.Count Then Exit Sub
            ActiveChart.SeriesCollection(j).Format.Line.Weight = £w
            j = j + 1
        Next £w
    End With
End Sub

...이러한 그래프를 그릴 수 있습니다. 이거 그릴 수 있음

그러한 그래프를 가질 수 있도록 누구든지 이 매크로를 수정해 줄 수 있습니까?

새로운 예상 그래프

감사합니다!

관련 정보