Farbe eines Diagramms aus Zellen mit seinen Daten

Formulierung des Problems

Ich möchte, dass die Spalten im Histogramm (oder Segmente im Kreisdiagramm usw.) automatisch die Farbe haben, mit der die entsprechenden Zellen mit den Quelldaten gefüllt wurden:

In Erwartung des überraschten und empörten Aufschreis einzelner Kameraden sei angemerkt, dass die Farbe der Füllung im Diagramm natürlich auch manuell geändert werden kann (Rechtsklick auf die Spalte – Punkt-/Serienformat (Datenpunkt/Reihe formatieren) usw. – niemand argumentiert. Aber in der Praxis gibt es viele Situationen, in denen es einfacher und bequemer ist, dies direkt in den Zellen mit Daten zu tun, und dann sollte das Diagramm dann automatisch neu gezeichnet werden. Versuchen Sie beispielsweise, die Füllung nach Regionen für die Spalten in diesem Diagramm festzulegen:

Ich denke, du verstehst die Idee, oder?

Lösung

Nichts als ein Makro kann dies tun. Deshalb öffnen wir Visual Basic-Editor aus der Registerkarte Entwickler (Entwickler – Visual Basic-Editor) oder drücken Sie die Tastenkombination Alt + F11, fügen Sie über das Menü ein neues leeres Modul ein Einfügen – Modul und kopieren Sie den Text eines solchen Makros dorthin, was die ganze Arbeit erledigen wird:

Sub SetChartColorsFromDataCells() If TypeName(Selection) <> "ChartArea" Then MsgBox "Сначала выделите диаграмму!" Exit Sub End If Set c = ActiveChart For j = 1 To c.SeriesCollection.Count f = c.SeriesCollection(j).Formula m = Split(f, ",") Set r = Range(m(2)) For i = 1 To r.Cells.Count c.SeriesCollection(j).Points(i).Format.Fill.ForeColor.RGB = _ r.Cells(i).Interior.Color Next i Next j End Sub  

Sie können Visual Basic jetzt schließen und zu Excel zurückkehren. Die Verwendung des erstellten Makros ist sehr einfach. Wählen Sie das Diagramm aus (Diagrammbereich, nicht Diagrammbereich, Gitter oder Säulen!):

und führen Sie unser Makro mit der Schaltfläche aus Makros Tab Entwickler (Entwickler – Makros) oder mit einem Tastenkürzel Alt + F8. Im selben Fenster können Sie bei häufiger Verwendung dem Makro über die Schaltfläche eine Tastenkombination zuweisen Parameter (Optionen).

PS

Der einzige Wermutstropfen ist die Unmöglichkeit, eine ähnliche Funktion für Fälle zu verwenden, in denen die Farbe den Zellen der Quelldaten mithilfe von bedingten Formatierungsregeln zugewiesen wird. Leider verfügt Visual Basic nicht über ein integriertes Tool zum Lesen dieser Farben. Natürlich gibt es gewisse „Krücken“, aber die funktionieren nicht für alle Fälle und nicht in allen Versionen.

  • Was sind Makros, wie verwendet man sie, wo fügt man Makrocode in Visual Basic ein
  • Bedingte Formatierung in Excel 2007-2013
  • Was ist neu in Diagrammen in Excel 2013

Hinterlassen Sie uns einen Kommentar