Ich habe das Problem, dass die Zahlen die ich aus einer
Tabelle lese und in einem Diagramm als Prozent anzeigen
will(Datenwerte), anstatt als z. B. 16.3 als 16,888,234
angezeigt werden.
Dabei ist es egal ob ich die Datenbeschriftung als Zahl
oder als Prozent formatiere!
Woran kann das liegen und wie kann ich das ändern?
Die Daten lese ich aus einer Tabelle1, schreibe sie in
eine Tabelle2 und erstelle aus einer Tabelle3 ein Diagramm.
Die Daten aus Tabelle2 nutze ich als Datenwerte um die
Differenz zwischen den Säulen anzuzeigen
Für jede Hilfe bin ich sehr dankbar!
Sebastian Lorenz
Ändere die Formatierung im Diagramm:
Doppelklick in Achsennähe -> Zahlenformat ändern.
Gruß, Ralf.
>Ändere die Formatierung im Diagramm:
>Doppelklick in Achsennähe -> Zahlenformat ändern.
>
>Gruß, Ralf.
Das kann ich nicht machen!
Dann werde die Werte auf der Größenachse in % angegeben...
Aber das sind andere Werte! Nur die Werte die ich zur
Datenbeschriftung verwende, sollen in % angegeben werden!
Der Wert in % der auf den Säulen als Datenbeschriftung
steht ist nicht der Wert aus dem die Säule entstand
sondern ein Wert der die Differenz zischen denn Säulen
anzeigt. Diese Werte lese ich aus Tabelle3 aus und
schreibe sie mit VBA als Datenbeschriftung in das Diagramm
rein. Um das Säulendiagramm zu erstellen benutze ich die
Werte aus Tabelle2.
Oder habe ich dich falsch verstanden und ich soll nicht
die Achsen des Diagramms neu formatieren?!?!
Gruß
Sebastian Lorenz
Sebastian Lorenz schrieb am 29.04.2004
> Ich habe das Problem, dass die Zahlen die ich aus einer
> Tabelle lese und in einem Diagramm als Prozent anzeigen
> will(Datenwerte), anstatt als z. B. 16.3 als 16,888,234
> angezeigt werden.
> Dabei ist es egal ob ich die Datenbeschriftung als Zahl
> oder als Prozent formatiere!
> Woran kann das liegen und wie kann ich das ändern?
Wie weist Du die Datenbeschriftung dem Diagramm denn zu?
Möglicherweise musst Du die Formatierung während der Zuweisung vornehmen.
> Die Daten lese ich aus einer Tabelle1, schreibe sie in
> eine Tabelle2 und erstelle aus einer Tabelle3 ein Diagramm.
> Die Daten aus Tabelle2 nutze ich als Datenwerte um die
> Differenz zwischen den Säulen anzuzeigen
Für die zuweisung der Beschriftungen könntest Du eventuell das folgende
Add-In einsetzen:
http://www.bmsltd.ie/DLCount/DLCount.asp?file=XYChartLabeler.exe
--
Mit freundlichen Grüssen
Thomas Ramel
- MVP für Microsoft-Excel -
[Win 2000Pro SP-4 / xl2000 SP-3]
>Wie weist Du die Datenbeschriftung dem Diagramm denn zu?
>Möglicherweise musst Du die Formatierung während der
Zuweisung vornehmen.
Ich benutze folgenden Code:Sub DatenbeschriftungAusZellen()
Dim Datenreihe As Series
Dim Punkte As Points
Dim Punkt As Point
Dim i As Integer
Set Datenreihe = ActiveSheet.ChartObjects
(1).Chart.SeriesCollection(1)
Datenreihe.HasDataLabels = True
Set Punkte = Datenreihe.Points
'Startwert für Datenbeschriftung (Spalte A)
Range("A15").Select
For Each Punkt In Punkte
i = i + 1
On Error Resume Next
'Erzeugt Beschriftung aus 2 Zellen
'Punkt.DataLabel.Text = ActiveCell.Offset(-2,
i).Value & Chr(10) & ActiveCell.Offset(0, i).Value
'Erzeugt Beschriftung aus 1 Zelle
Punkt.DataLabel.Text = ActiveCell.Offset(0,
i).Value
Punkt.DataLabel.Font.Bold = True
On Error GoTo 0
Next Punkt
End Sub
Dieser Code wurde mir netter Weise auf Grund einer Frage
hier in der Newsgroup zugesand!(Da ich mit vielen
Begriffen wie Points etc. auch mit der Excel-Hilfe nicht
viel anfangen kann habe ich aber noch ein paar Anwenduns-/
Verständnissprobleme...)
>Für die zuweisung der Beschriftungen könntest Du
eventuell das folgende
>Add-In einsetzen:
>
>http://www.bmsltd.ie/DLCount/DLCount.asp?
file=XYChartLabeler.exe
Ich kann leider kein Addin verwenden da ich am Firmen
Comp. diese Tabelle ertstelle.
Wenn ich das AddIn Zuhause verwende etc. und das fertige
Diagramm auf der Firma ohne AddIn öffne funktioniert es
dann auch???
Sebastian Lorenz schrieb am 29.04.2004
> Ich benutze folgenden Code:Sub DatenbeschriftungAusZellen()
> Dim Datenreihe As Series
> Dim Punkte As Points
> Dim Punkt As Point
> Dim i As Integer
>
> Set Datenreihe = ActiveSheet.ChartObjects
> (1).Chart.SeriesCollection(1)
> Datenreihe.HasDataLabels = True
> Set Punkte = Datenreihe.Points
> 'Startwert für Datenbeschriftung (Spalte A)
> Range("A15").Select
> For Each Punkt In Punkte
> i = i + 1
> On Error Resume Next
>
> 'Erzeugt Beschriftung aus 2 Zellen
> 'Punkt.DataLabel.Text = ActiveCell.Offset(-2,
> i).Value & Chr(10) & ActiveCell.Offset(0, i).Value
Welche Werte stehen in den betreffenden Zellen (Wert und Format)?
Und welches Resultat erwartest Du?
Hier werden die Inhalte der Zellen einfach per String-operator miteinander
verknüpft. Die Formatierung der Zellen findet dabei keine Anwendung.
Eventuell bringt das folgende schon etwas:
Punkt.DataLabel.Text = ActiveCell.Offset(-2, i).Text & Chr(10) _
& ActiveCell.Offset(0, i).Text
> 'Erzeugt Beschriftung aus 1 Zelle
> Punkt.DataLabel.Text = ActiveCell.Offset(0,
> i).Value
Hier stellen sich dieselben Fragen wie oben: Welcher Wert (Wert und Format)
steht in der Zelle und was wolltest Du gerne haben?
Auch hier die Alternative:
Punkt.DataLabel.Text = ActiveCell.Offset(0,i).Text
> Punkt.DataLabel.Font.Bold = True
>
> On Error GoTo 0
> Next Punkt
>
> End Sub
>>http://www.bmsltd.ie/DLCount/DLCount.asp?file=XYChartLabeler.exe
>
> Ich kann leider kein Addin verwenden da ich am Firmen
> Comp. diese Tabelle ertstelle.
> Wenn ich das AddIn Zuhause verwende etc. und das fertige
> Diagramm auf der Firma ohne AddIn öffne funktioniert es
> dann auch???
Das Add-In ist 'dur' dazu da, Datenbeschriftungen einzutragen - wenn sie
mal drinstehen ist das AddIn nicht mehr notwendig.
BTW: Du kannst wohl mit Makros arbeiten, aber keine Add-Ins installieren?
--
Mit freundlichen Grüssen
Thomas Ramel
Vielen Dank für deine Hilfe!!!!!
Es wird nun alles so dargestellt wie ich es gern hätte!
Aber könntest du mir vieleicht noch erklären wie ich denn
Code verändern müsste um die Daten die ich zur
Datenbeschriftung verwende nicht mehr wie jetzt aus einer
Zeile zu lesen sondern aus einer Spalte heraus?
>Welche Werte stehen in den betreffenden Zellen (Wert und
Format)?
Ich verwende ein Benutzer definiertes Format: 0"%"
>Und welches Resultat erwartest Du?
Ich wollte die Differnz zwischen den einzelnen Säulen in %
angeben.
Dies kann ich nun auch durch die kleine Änderrung .Text!
>Das Add-In ist 'dur' dazu da, Datenbeschriftungen
einzutragen - wenn sie
>mal drinstehen ist das AddIn nicht mehr notwendig.
Dann probier ich es Zuhause mal aus!
>BTW: Du kannst wohl mit Makros arbeiten, aber keine Add-
Ins installieren?
Es darf generel nichts selbst instalieren werden in der
Firma!
Ich bin auch nur AZUBI im 1Jahr!
Mit freundlichen Grüssen
Sebastian
PS: Und Danke nochmal!
Sebastian Lorenz schrieb am 29.04.2004
> Vielen Dank für deine Hilfe!!!!!
> Es wird nun alles so dargestellt wie ich es gern hätte!
Na, das freut mich aber! :-)
> Aber könntest du mir vieleicht noch erklären wie ich denn
> Code verändern müsste um die Daten die ich zur
> Datenbeschriftung verwende nicht mehr wie jetzt aus einer
> Zeile zu lesen sondern aus einer Spalte heraus?
Schau dir dazu die Paramter der offset()-Eigenschaft näher an. Hier legst
Du fest, in welche Richtung der Versatz sich erstreckt.
Am einfachsten im VBA-Editor den Schreibcursor ins Wort 'Offset' stellen
und F1 drücken.
>>Welche Werte stehen in den betreffenden Zellen (Wert und
> Format)?
> Ich verwende ein Benutzer definiertes Format: 0"%"
>
>>Und welches Resultat erwartest Du?
>
> Ich wollte die Differnz zwischen den einzelnen Säulen in %
> angeben.
> Dies kann ich nun auch durch die kleine Änderrung .Text!
Gut, dann klappt das nun, wie es sollte.
> PS: Und Danke nochmal!
Aber gerne doch.