Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1508to1512
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA-Blasendiagramm mit unterschiedlichen Farben

VBA-Blasendiagramm mit unterschiedlichen Farben
30.08.2016 08:17:36
juskri
Hallo leibe VBA Profis,
wäre sehr dankbar, wenn mir einer von euch bei folgendem Problem behilflich sein kann.
Ich habe eine Excel-Liste und möchte daraus ein Blasendiagramm mit unterschiedlichen Blasenfarben erstellen.
Anbei der Link mit dem Beispiel: https://www.herber.de/bbs/user/107887.xlsx
Die Spalte C als x-Achse
Die Spalte D als y-Achse
Die Spalte F als Blasengröße
In dem Beispiel habe ich jede Zeile manuell eingefügt, damit auch die Farbe der Blasen unterschiedliche sind. Jedoch habe ich eine Excel-Liste mit 200 Zeilen, die ich manuell einfügen müsste.
Gibt es da eine Lösung das ganze mit einem VBA-Code zu automatisieren? Für mich ist es wichtig das die Blasen unterschiedliche Farben haben, unabhängig von derer Größe und Platzierung. Die Farben können auch öfter vorkommen.
Vielen Dank im Voraus
Gruß
juskri

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Blasendiagramm mit unterschiedlichen Farben
30.08.2016 09:07:43
baschti007
Hier ein Bsp.
Gruß Basti

Sub Makro1()
Dim rng As Range
Dim zells As Range
Dim i As Long
Dim TabellenName As String
i = 1
TabellenName = "=Beispiel!"
With ThisWorkbook.Worksheets("Beispiel")
Set rng = .Range(.Cells(2, 1), .Cells(.Cells(1048576, 1).End(xlUp).Row, 1))
End With
With ActiveSheet.ChartObjects("Diagramm 1").Chart
intChartRow = .SeriesCollection.Count
For intCounter = intChartRow To 1 Step -1 ' Löschen der Daten
.SeriesCollection(intCounter).Delete
Next intCounter
For Each zells In rng '-- einlesen der Neuen Daten
.SeriesCollection.NewSeries
.FullSeriesCollection(i).Name = TabellenName & zells.Address
.FullSeriesCollection(i).XValues = TabellenName & zells.Offset(0, 2).Address
.FullSeriesCollection(i).Values = TabellenName & zells.Offset(0, 3).Address
.FullSeriesCollection(i).BubbleSizes = TabellenName & zells.Offset(0, 5).Address
'.FullSeriesCollection(i).Format.Fill .ForeColor.RGB = RGB(0, 0, 0) ' Hier könnte man die  _
Farbe Manuell ändern in der Schleife aber ich meine das excel Automatisch eine andere Farbe wählt
i = i + 1
Next
End With
End Sub

Anzeige
AW: VBA-Blasendiagramm mit unterschiedlichen Farben
30.08.2016 10:56:50
juskri
Hallo Basti,
vielen Dank für deine Hilfe. Es funktioniert hervorragend!!!
Ein Frage hätte ich doch noch: Wenn ich den Tabellennamen z.B. auf Test ändere, muss ich ja nur die folgende Positionen ändern:
-TabellenName = "=Test!"
-With ThisWorkbook.Worksheets("Test")
Dies habe ich ausprobiert. Es kommt aber ein Fehler: Laufzeitfehler 5, Ungültiger Prozedurabruf oder ungültiges Argument.
Es tut mir Leid für meine bescheidene VBA-Kenntnisse. Wäre nett, wenn mich aufklären würdest.
Vielen Dank schon mal!
Gruß
juskri
AW: VBA-Blasendiagramm mit unterschiedlichen Farben
30.08.2016 11:27:24
baschti007
Du musst nach dem du den Namen im Sheet geändert hast einmal in das Sheet klicken dann speichert er den namen und du kannst das makro starten ..
Gruß Basti
Anzeige
AW: VBA-Blasendiagramm mit unterschiedlichen Farben
30.08.2016 09:14:01
Fennek
Hallo,
der folgende Code gibt Zugriff auf die RGB-Farbe jedes Punktes. Mit veränderten Formeln für jede RGB Farbe können beliebige Schema erzeugt werden.

Sub Farbe_definieren()
Dim Ch As ChartObject
Set Ch = ActiveSheet.ChartObjects("Diagramm 1")
N = Ch.Chart.FullSeriesCollection.Count
Stufe = 255 / N
For i = 1 To N
With Ch.Chart.FullSeriesCollection(i).Format.Fill
.Visible = msoTrue
.ForeColor.RGB = RGB(i * Stufe, 255 - i * Stufe, i * Stufe)
.Transparency = 0
.Solid
End With
Next i
End Sub
mfg

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige