VBA-Beispiel 131
mail schreiben
mail schreiben

Diagramm Datenquelle automatisch anpassen

Je nach Zellauswahl ändert sich die Datenquelle des Diagramms.

Die Prozedur befindet sich im Klassenmodul der Tabelle.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Datenquelle und Titel eines Diagramms ändern

If Target.Row > 3 And Target.Row < 10 And _
   Target.Column > 4 And Target.Column < 17 Then

  ' - Tabelle wird mit dem CodeNamen angesprochen!
  ' - Diagramm hat den Namen 'chaInfo'!
  wksStatistik.ChartObjects("chaInfo").Visible = True

  With wksStatistik.ChartObjects("chaInfo").Chart
    'Datenquelle
    .SetSourceData Source:=Range(Cells(Target.Row, 5), _
                                 Cells(Target.Row, 16)), _
                   PlotBy:=xlRows
    'höchste Wert
    .Axes(xlValue).MaximumScale = 500
    'Beschriftung
    .SeriesCollection(1).XValues = wksStatistik.Range("E3:P3")

    With .ChartTitle
      'Titel = Jahr aus Spalte C
      .Characters.Text = Cells(Target.Row, 3)
      .Left = 25
    End With
  End With

Else
  wksStatistik.ChartObjects("chaInfo").Visible = False
End If

End Sub

Download:   vba131.zip