Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1400to1404
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

Ausrichtung Datenbeschriftung Säulendiagramm

Ausrichtung Datenbeschriftung Säulendiagramm
08.01.2015 10:39:58
basti
Guten Morgen,
ich hatte schonmal einen Beitrag zu dem Thema offen, ich verstehe in diesem Forum allerdings nicht ganz wie ich auf einem Beitrag antworten kann wenn ich ihn unter "deine Beiträge" öffne. Deswegen mach ich jetz nochmal einen neuen auf. Sorry dafür.
In einem Diagramm mit gestapelten Säulen möchte ich die Datenbeschriftung in eine Ausgangsposition bringen und dann verschieben. Beverley/Karin hat mir hierzu dieses Makro geschrieben:
Sub BeschriftungVerschieben()
Dim chrDia As Chart
Dim intPunkt As Integer
Dim serReihe As Series
Set chrDia = ActiveSheet.ChartObjects("Diagramm 2").Chart
With chrDia
Set serReihe = .SeriesCollection(3)
With serReihe
If .HasDataLabels = True Then .DataLabels.Delete
.ApplyDataLabels
.DataLabels.Position = xlLabelPositionInsideEnd
For intPunkt = 1 To .Points.Count
.Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top - 20
Next intPunkt
End With
Set serReihe = .SeriesCollection(4)
With serReihe
If .HasDataLabels = True Then .DataLabels.Delete
.ApplyDataLabels
.DataLabels.Position = xlLabelPositionInsideEnd
For intPunkt = 1 To .Points.Count
.Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top - 20
Next intPunkt
End With
Set serReihe = .SeriesCollection(2)
With serReihe
If .HasDataLabels = True Then .DataLabels.Delete
.ApplyDataLabels
.DataLabels.Position = xlLabelPositionInsideBase
For intPunkt = 1 To .Points.Count
.Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top + 20
Next intPunkt
End With
End With
Set serReihe = Nothing
Set chrDia = Nothing
End Sub
In der Zeile
.Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top - 20
bekomme ich den Fehler " Die Methode 'Top' ist für das Objekt 'DataLabel' fehlgeschlagen.
Hat jemand ne Idee woran das liegen kann?
Hier meine Mappe https://www.herber.de/bbs/user/94827.xlsm

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

Betreff
Datum
Anwender
Anzeige
AW: Ausrichtung Datenbeschriftung Säulendiagramm
08.01.2015 11:31:13
Beverly
Hi Basti,
das Problem tritt auf, wenn kein Beschriftungslabel für den Datenpunkt existiert. Versuche es so:
If .Points(intPunkt).DataLabel.Caption  "" Then .Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top - 20


AW: Ausrichtung Datenbeschriftung Säulendiagramm
08.01.2015 14:32:06
half
Hi Karin,
danke für deine antwort.
der fehler tritt leider weiterhin auf. selbst wenn ich jeden Datenpunkt ausfülle kommt der fehler.

AW: Ausrichtung Datenbeschriftung Säulendiagramm
09.01.2015 08:08:23
Beverly
Hi,
das kann ich leider nicht nachvollziehen.
Dann bleibt dir nur noch On Error Resume Next, was aber bedeutet, dass es durchaus sein kann, dass das eine doer andere Label nicht verschoben wird - damit musst du dann leben.
            On Error Resume next
For intPunkt = 1 To .Points.Count
.Points(intPunkt).DataLabel.Top = .Points(intPunkt).DataLabel.Top - 20
Next intPunkt
On Error Goto 0


Anzeige
AW: Ausrichtung Datenbeschriftung Säulendiagramm
09.01.2015 09:21:00
basti
dann verschiebt er leider garkein Label. Ich finds halt irgendwie komisch weil das Makro ja im Prinzip funktioniert wenn ich bei der Fehlermeldung immer debuggen klicke und weiter ausführe, ist das Ergebnis korrekt.
Naja wie dem auch sei, vielen Dank für deine Hilfe

AW: Ausrichtung Datenbeschriftung Säulendiagramm
13.01.2015 11:54:18
basti
Nochmal ich:
Wenn ich den Teil so formuliere:
            For intPunkt = 1 To .Points.Count
.Points(intPunkt).DataLabel.Select
Selection.Top = Selection.Top + 30
Next intPunkt
dann funktioniert es. Die Ausführung des Makros dauert leider recht lange (ca. 7-8 sek.) ist das normal oder gibt es eine Möglichkeit das zu beschleunigen?
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige