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

DataLabels - Bezug zu Tabelle per VBA herstellen

DataLabels - Bezug zu Tabelle per VBA herstellen
01.08.2013 18:46:24
Rudiator
Guten Abend zusammen,
nachdem wir neuerdings auf Excel 2010 umgestellt haben, bekomme ich ab und an ein paar Problemchen beim "Verstehen" - insbesondere was Grafikelemente betrifft.
Im Speziellen passiert mir aktuell Folgendes:
Aufgabe:
Datenbeschriftungen einer Datenreihe in einem gestapelten Säulendiagramm per Formel auf Zellen im Tabellenblatt zuweisen.
Sofern ich versuche den aufgezeichneten Code per VBA auszuführen, erhalte ich immer die Fehlermeldung "Lzf 1004: Anwendungs- oder objektdefinierter Fehler". Auch mit dem original aufgezeichneten Code. VBA steigt immer beim Versuch des Zuweisens der Formel aus (Fett markierte Zeile).
Schicker wäre natürlich noch darüber hinaus eine Zuweisung ohne die einzelnen Elemente auswählen oder aktivieren zu müssen (z.B. with datenreihe().datenpunkt().DataLabel ...) - sofern machbar.
Gibt es da anscheinend doch Einschränkungen? Eigentlich ist .Formula doch zugelassen

Sub datenreihen_beschriftung()
Application.ScreenUpdating = False
Dim btAktPkt As Byte
For btAktPkt = 1 To ActiveSheet.Cells(2, 1).Value      '(soll variabel gehalten werden)
'so kommt es aus dem Rekorder:
ActiveSheet.ChartObjects("grafik").Activate
ActiveChart.SeriesCollection(9).DataLabels.Select
ActiveChart.SeriesCollection(9).Points(btAktPkt).DataLabel.Select
Selection.Formula = "=leer!R40C36"
Next btAktPkt
ActiveSheet.Cells(19, 13).Select
Application.ScreenUpdating = True
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: DataLabels - Bezug zu Tabelle per VBA herstellen
02.08.2013 11:38:44
Beverly
Hi,
versuche es mal nach diesem Prinzip:
Sub Beschriftung()
Dim lngPunkt As Long
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
For lngPunkt = 1 To .Points.Count
.Points(lngPunkt).DataLabel.Text = "='Tabelle1'!" & Cells(lngPunkt, 1).Address
.Points(lngPunkt).DataLabel.NumberFormatLinked = -1
Next lngPunkt
End With
End Sub


AW: DataLabels - Bezug zu Tabelle per VBA herstellen
02.08.2013 13:49:15
Rudiator
Herzlichen Dank!
Die Syntax mit & Cells(lngPunkt, 1).Address brachte den gewünschten Effekt!

Anzeige
AW: DataLabels - Bezug zu Tabelle per VBA herstellen
02.08.2013 14:18:27
Rudiator
Ach ja, noch hier mein finaler Code:
Sub datenreihen_beschriftung()
Application.ScreenUpdating = False
Dim btPunkt As Byte
With ActiveSheet.ChartObjects("grafik").Chart.SeriesCollection(9)
For btPunkt = 1 To .Points.Count
.Points(btPunkt).DataLabel.Text = "='" & ActiveSheet.Name & "'!" & _
Cells(ActiveSheet.Cells(6, 1).Value, ActiveSheet.Cells(6, 2).Value + btPunkt). _
Address
.Points(btPunkt).DataLabel.NumberFormatLinked = -1
Next btPunkt
End With
Application.ScreenUpdating = True
End Sub

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige