Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
968to972
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
968to972
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bubblediagramm per VBA

Bubblediagramm per VBA
21.04.2008 14:17:46
Matty
Hallo Herber-Forum!
Ich habe eine Frage! Ich habe versucht aus folgender Tabelle ein Bubblediagramm zu stricken. Das funktioniert aber nicht standardmäßig über Diagramm erstellen usw. weil es dann nicht so aussieht wie
ich es hier gestaltet habe. Ich habe dann zur Veränderung ein Makro eingefügt, das das Bubblediagramm dementsprechend abändern kann. Funktioniert aber auch nicht so richtig.
Wie müsste ich das Programmieren, damit das Programm aus dieser Tabelle das entsprechend dargestellte Bubblediagramm erstellt!?
Link zu meiner Beispieldatei: https://www.herber.de/bbs/user/51732.xls
Tausend dank für eure Unterstützung!
Gruß
matty

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bubblediagramm per VBA
21.04.2008 15:06:00
Beverly
Hi Matty,
versuchs mal so

Sub dia()
Dim inZeile As Integer
Dim chDiagramm As Chart
Set chDiagramm = ActiveSheet.ChartObjects(2).Chart
With chDiagramm
.SetSourceData Source:=Sheets("Tabelle1").Range("B2:D2"), PlotBy:=xlColumns
.ChartType = xlBubble
With .SeriesCollection(1)
.BubbleSizes = "=Tabelle1!R2C4"
.ApplyDataLabels ShowBubbleSize:=True 'Name einschalten
.DataLabels.NumberFormat = "#'000,"
End With
For inZeile = 3 To IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp). _
Row, Rows.Count)
.SeriesCollection.NewSeries
With .SeriesCollection(.SeriesCollection.Count)
.XValues = "=Tabelle1!R" & inZeile & "C2"
.Values = "=Tabelle1!R" & inZeile & "C3"
.Name = "=Tabelle1!R" & inZeile & "C1"
.BubbleSizes = "=Tabelle1!R" & inZeile & "C4"
'                Farbe fehlt noch
.ApplyDataLabels ShowBubbleSize:=True 'Name einschalten
.DataLabels.NumberFormat = "#'000,"
'                .Points(1).DataLabel.Left = .Points(1).DataLabel.Left - 35
End With
Next inZeile
End With
End Sub


Die Labels, die ganz links sind, lassen sich nicht so weit verschieben, weil sie sonst außerhalb des Diagramms zu liegen kämen, und das ist nicht möglich.

Anzeige
AW: Bubblediagramm per VBA
21.04.2008 21:58:11
Matty
Hallo Beverly!
danke fuer deine Antwort, aber das funktioniert nicht mit dem Bubble diagramm. Das Programm hat Schwierigkeiten bei der Stelle wo du Diagramm 2 aufrufst set chdiagramm... und davor muesste irgendwo create bubble diagramm stehen..
trotzdem, danke fuer die hilfe! ;-)
gruss
Matty

AW: Bubblediagramm per VBA
22.04.2008 00:48:56
Reinhard
Hi Matty,
was soll Beverly aus deiner Antwort herauslesen?
Meinst du sie hat eine Glaskugel und kann sehen was du da in deiner Datei siehst?
Becenke bitte, alle Infos die du unterschlägst bedeuten 10fachen Stress für Hilfswillige sich da reinzudenken in dein Problem.
Sag mal genauer was da nicht funktioniert und welche Fehlermeldung der Debugger anzeigt.
Und warum da "create bubble diagramm " fehlt, was immer damit gemeint ist.
Frage auf noch offen gestellt, gibt ja vielleicht Hellseher hier :-)
Gruß
Reinhard

Anzeige
AW: Bubblediagramm per VBA
22.04.2008 07:44:51
Beverly
Hi Matty,
Reinhard hat eigentlich schon alles geschrieben, was ich auch geschrieben hätte - und ich lehne es ab, übers Internet in fremde Gehirne zu schauen ;-))).
Schau dir deinen eigenen Code mal genau an - wo steht da was von Create?

Sub DiagrammErstellentest()
On Error GoTo Fehler
Dim SP%, LR&, TB1, CH, i&, Scc%, A
Set TB1 = Sheets("Tabelle1") 'aus bestimmtem Blatt
SP = 1 'Spalte A
TB1.Cells(1, 1).Select
LR = TB1.Cells(Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
ActiveSheet.ChartObjects("Diagramm 1").Select
For i = 2 To LR
ActiveChart.SeriesCollection.NewSeries
With ActiveChart.SeriesCollection(i)
.XValues = "=Tabelle1!R" & i & "C2"
.Values = "=Tabelle1!R" & i & "C3"
.Name = "=Tabelle1!R" & i & "C1"
.BubbleSizes = "=Tabelle1!R" & i & "C4"
'färben
.ApplyDataLabels ShowSeriesName:=True 'Name einschalten
.Points(1).DataLabel.Left = .Points(1).DataLabel.Left - 35
End With
Next i
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
Application.DisplayAlerts = True
End Sub


Was ist daran so schwierig, dass du in meinem Code die 2 wieder in deinen Diagrammnamen änderst? Zum Testen verwende ich zu Vergleichszwecken nicht das Original sondern eine Kopie im selben Diagrammblatt, und weil Excel die Diagrammnamen ja ständig neu vergibt, ist es einfacher, auf den Index als auf den Diagrammnamen zu referenzieren.



Anzeige
AW: Bubblediagramm per VBA
22.04.2008 17:16:11
Matty
Hallo Beverly!
Danke für die Hilfe, ich habe das Problem gelöst.
Gruß and die Community,
Matty

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige