Beschriftungen in Diagramm verschieben?

Hi,

Ich habe ein Problem, von dem ich nie auch nur geträumt hätte, weil es total einfach aussieht. Also: Ich habe mit Excel 2002 ein Kreisdiagramm erstellt. Rund um den Kreis steht der Name und der Prozentanteil. Die kann man aber überhaupt nicht lesen, weil einige Werte sehr klein sind. Rechts und links vom Kreis ist ziemlich viel Leerraum (ohne wirklichen Grund, wie es mir scheint, nicht einmal die Überschrift ist nämlich so lang, daß es das rechtfertigen würde). Wie mache ich es jetzt, daß ich die Beschriftungen hinausziehe, ohne die Größe des Diagramms oder des Kreises zu verändern? Ich hätte gedacht, daß man einfach die Bezeichnungen markiert und hinausziehen kann, aber das geht nur mit jedem einzelnen Punkt.

Danke,
Angela

Hallo, Angela!

Rechts und links vom
Kreis ist ziemlich viel Leerraum (ohne wirklichen Grund, wie
es mir scheint, nicht einmal die Überschrift ist nämlich so
lang, daß es das rechtfertigen würde).

Der Leerraum ist da, weil der Kreis (mit quadratischer Grundform) in der rechteckigen, querformatigen Diagrammfläche eben viel Platz am Rand übrig läßt. Selbst wenn Du den Kreis auf die maximale Größe bringst, hast Du rechts und links noch Platz übrig.

Ich hätte gedacht,
daß man einfach die Bezeichnungen markiert und hinausziehen
kann, aber das geht nur mit jedem einzelnen Punkt.

Das wäre ja zu einfach. Über die Formatierung der Datenbeschriftung hinaus („Ausrichtung Ende außerhalb“) geht nichts für die gesamte Datenbeschriftung. Da wirst Du die einzelnen Beschriftungen schon manuell anpassen müssen. Oder ganz hardcore per Makro in Abhängigkeit der Werte…

Gruß, Manfred

Makrolösung?

ein Kreisdiagramm erstellt. Rund um den Kreis steht der Name
und der Prozentanteil. Die kann man aber überhaupt nicht
lesen, weil einige Werte sehr klein sind. Rechts und links vom
Kreis ist ziemlich viel Leerraum (ohne wirklichen Grund, wie
es mir scheint, nicht einmal die Überschrift ist nämlich so
lang, daß es das rechtfertigen würde). Wie mache ich es jetzt,
daß ich die Beschriftungen hinausziehe, ohne die Größe des
Diagramms oder des Kreises zu verändern? Ich hätte gedacht,
daß man einfach die Bezeichnungen markiert und hinausziehen
kann, aber das geht nur mit jedem einzelnen Punkt.

Hi Angela,

folgende Tabelle:
 A B
1 miete 1000
2 versicherung 200
3 auto 300
4 Konsum 500

mit dem ersten Makro wird ein Kreis erstellt und per msgbox die linke(left) und obere(top) Position der Datenbeschriftungen angezeigt.
Im zweiten Makro werden dann die Beschriftungen verschoben.
D.h. mit .top und .left kannst du die Positionen der beschriftungen festlegen.
Ich hoffe es bringt dich weiter.
Gruß
Reinhard

Sub KreisErzeugen()
For Each Kreis In Worksheets("Tabelle1").Shapes
 Kreis.Delete
Next Kreis
Charts.Add
ActiveChart.Name = "K1"
ActiveChart.ChartType = xlPie
ActiveChart.SetSourceData Source:=Sheets("Tabelle1").Range("A1:B4"), PlotBy \_
 :=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Tabelle1"
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabelAndPercent, LegendKey \_
 :=False, HasLeaderLines:=True
ActiveChart.SeriesCollection(1).DataLabels.Select
nummer = 1
For Each dl In ActiveChart.SeriesCollection(1).DataLabels
 MsgBox "Nummer: " & nummer & " Bezeichnung: " & dl.Caption & " Links: " & dl.Left & " oben: " & dl.Top
nummer = nummer + 1
Next dl
End Sub

Sub BeschriftungVerschieben()
For Each dl In ActiveChart.SeriesCollection(1).DataLabels
 If dl.Left \> 110 Then
 dl.Left = dl.Left + 200
 Else
 dl.Left = dl.Left - 200
 End If
 dl.Top = dl.Top - 100
Next dl
End Sub