ich habe folgende Frage: Ist es möglich in einem XY-Diagramm die einzelnen
Datenpunkte mit einem Text (automatisch) zu beschriften, welchen ich
beispielsweise auch in einer Datenspalte abgelegt habe? Es geht um die
Peakbeschriftung bezügl. der X-Werte eines Spektrums.
MfG
Mathias Lehmann
ja,
verfahre folgendermaßen:
ich gehe davon aus, daß die Datenpunkte Labels haben, die
ihren Wert widergeben, ansonsten "Datenreihe formatieren" aufrufen,
"Datenbeschriftung", "Wert anzeigen" anhaken.
Dann auf die Beschriftung eines Datenpunkts "langsam" doppelklicken,
in die Bearbeitungsleiste gehen und einen Bezug reinschreiben,
z. B.: =Tabelle1!G3, Enter drücken und fertig.
Nun erscheint an diesem Punkt immer das als Label,
was in Zelle "Tabelle1!G3" steht.
Gruß
Werner
"Mathias Lehmann" <mle...@igb.fhg.de> schrieb im Newsbeitrag
news:9hskm9$fj0pq$1...@ID-60422.news.dfncis.de...
danke für den Tip - es funktioniert sehr gut! Nur ich würde gern die
komplette Beschriftung aller Datenpunkte ändern wollen, d.h. gibt es eine
Möglichkeit das langasame Anklicken eines Datenpunktes zu umgehen, sondern
direkt die ganze Beschriftung (von allen Datenpunkten) zu erfassen? Ich
hab's mal aus probiert und folglich in die Bearbeitungzeile einen
Tabellenbereich angegeben, z.B.: "Tabelle1!G3:G43" und es funktionierte
nicht...
Noch Ideen?
Grüsse
Mathias
"Werner Rohrmoser" <wrohr...@de.stabilus.com> schrieb im Newsbeitrag
news:9hspkt$k0...@sunny.mannesmann.de...
anbei zwei Prozeduren zum Setzen und Löschen der Beschriftungen.
Voraussetzung:
- Eine Datenreihe muß vor Aufruf der Prozedur markiert sein.
- InputBox mit Markierung des gewünschten Ranges, der die Beschriftungen
enthält beantworten.
'*****************************************************************
Option Explicit
Option Compare Text
Sub DataLabelsFromRange()
Dim DLRange As Range
Dim Cht As Chart
Dim i As Integer
Dim Pts As Integer
Dim Ser As Series
' Definition des Charts und der Series
Set Cht = ActiveChart
Set Ser = Selection
' Range abfragen
On Error Resume Next
Set DLRange = Application.InputBox _
(prompt:="Range for data labels?", Type:=8)
If DLRange Is Nothing Then Exit Sub
On Error GoTo 0
' Data Labels hinzufügen
Ser.ApplyDataLabels _
Type:=xlDataLabelsShowValue, _
AutoText:=True, _
LegendKey:=False
' Schleife durch Punkte und Data Labels erzeugen
Pts = Ser.Points.Count
' verwende erstes od. zweites statement nach "For", ohne(1) oder mit(1)
Verknüpfung
For i = 1 To Pts
'Ser.Points(i).DataLabel.Characters.Text = DLRange(i)
Ser.Points(i).DataLabel.Text = "=" & "'" & DLRange.Parent.Name & _
"'!" & DLRange(i).Address(ReferenceStyle:=xlR1C1)
Next i
End Sub
Sub RemoveDataLabels()
Dim Cht As Chart
Dim Ser As Series
' Definition des Charts und der Series
Set Cht = ActiveChart
Set Ser = Selection
Ser.HasDataLabels = False
End Sub
'*****************************************************************
Gruß
Werner
"Mathias Lehmann" <mle...@igb.fhg.de> schrieb im Newsbeitrag
news:9hsr7e$fincs$1...@ID-60422.news.dfncis.de...
vielen, vielen Dank! Das VBA-Script funktioniert sehr gut!
Grüsse
Mathias
"Werner Rohrmoser" <wrohr...@de.stabilus.com> schrieb im Newsbeitrag
news:9hub5e$jt...@sunny.mannesmann.de...