Discussion:
Sortierte Darstellung in Balkendiagramm
(zu alt für eine Antwort)
Gregor Schmidle
2005-10-12 11:20:49 UTC
Permalink
Hallo!

Folgendes Problem:

Die Daten:

Wert1 23%
Wert2 17%
Wert3 60%

sollen in einem Balkendiagramm nach Grösse sortiert dargestellt werden, -
also in dem Beispiel die Balken in der Reihenfolge:

Wert3 ******************
Wert1 *******
Wert2 *****

Ich will und kann nicht die Quelldaten des Diagrams sortieren, da die
Prozentzahlen Berechnungen sind. Die Sortierung sollte auch automatisch
nachgeführt werden wenn sich die Quelldaten ändern.

Wie wird sowas gemacht?

Danke für Eure Tipps!
Gregor
Alexander Wolff
2005-10-12 11:21:09 UTC
Permalink
Post by Gregor Schmidle
Hallo!
Wert1 23%
Wert2 17%
Wert3 60%
sollen in einem Balkendiagramm nach Grösse sortiert dargestellt
Wert3 ******************
Wert1 *******
Wert2 *****
Ich will und kann nicht die Quelldaten des Diagrams sortieren, da die
Prozentzahlen Berechnungen sind. Die Sortierung sollte auch
automatisch nachgeführt werden wenn sich die Quelldaten ändern.
Mit einer Hilfsspalte aus Deinen Quelldaten enthaltend die Formel
=KKLEINSTE(Quelldaten;ZEILE()-IndividuellerLagefaktor)
auf die das Diagramm stattdessen zugreift.
--
Hallo + Gruss Alexander (WinXP Home SP1 - Office 2000 SP3) 6----5----7-2
Gregor Schmidle
2005-10-12 17:38:22 UTC
Permalink
Post by Alexander Wolff
Mit einer Hilfsspalte aus Deinen Quelldaten enthaltend die Formel
=KKLEINSTE(Quelldaten;ZEILE()-IndividuellerLagefaktor)
auf die das Diagramm stattdessen zugreift.
damit kann ich die numerischen Werte dynamisch sortieren. Das ist schon mal
die halbe Miete. Vielen Dank!

Wie bringe ich nun die Nachbarspalte mit den Balkenbeschriftungen ("Wert 1",
"Wert 2" usw.) dazu sich in der selben Art und Weise zu sortieren wie die
numerischen Daten?

Danke,
Gregor
unknown
2005-10-12 12:26:11 UTC
Permalink
Hallo Grgor,
folgender Vorschlag mit den Annahmen:
in A1:Ax stehen die Rubrikenbeschriftungen
in B1:Bx die Werte

Erstelle in C1 folgende Formel: =KGRÖSSTE($B$1:$B$x;ZEILE())
Erstelle das balkendiagramm mit der Markierung A1:Ax und C1:Cx.

MfG Frank
_________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned
Website: http://www.xl-faq.de
# Auftragsprogrammierung #
unknown
2005-10-12 12:33:50 UTC
Permalink
Hallo Grgor,
so geht es nicht! Da werden die Rubrikenbeschriftungen nicht
nachgeführt, daher wie folgt:

folgender Vorschlag mit den Annahmen:
in A1:Ax stehen die Rubrikenbeschriftungen
in B1:Bx die Werte

Formel in C1: =INDEX($A$1:$A$3;VERGLEICH(D1;$B$1:$B$3;0);1)
Formel in D1: =KKLEINSTE($B$1:$B$3;ZEILE())
Die Zellen in Spalte D müssen noch im Prozentformat formatiert werden.

Erstelle über den beiden Hilfsspalten C und D dein Balkendiagramm.

MfG Frank
_________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned
Website: http://www.xl-faq.de
# Auftragsprogrammierung #
Gregor Schmidle
2005-10-13 08:37:32 UTC
Permalink
Post by unknown
in A1:Ax stehen die Rubrikenbeschriftungen
in B1:Bx die Werte
Formel in C1: =INDEX($A$1:$A$3;VERGLEICH(D1;$B$1:$B$3;0);1)
Formel in D1: =KKLEINSTE($B$1:$B$3;ZEILE())
Die Zellen in Spalte D müssen noch im Prozentformat formatiert werden.
Erstelle über den beiden Hilfsspalten C und D dein Balkendiagramm.
Hallo Frank,

das funktioniert fast perfekt. Vielen Dank schonmal.
Einziges verbleibendes Problem ist wenn 2 oder mehrere Quelldaten in Spalte
B exakt denselben numerischen Wert haben.
Dann wird aus Spalte A die erste zutreffende Beschriftung genommen.

Anstatt etwas wie:

Ja ******
Weiss nicht ******
Nein ***

kommt dann:

Ja *******
Ja *******
Nein ***

Danke,
Gregor
unknown
2005-10-13 11:08:20 UTC
Permalink
Hallo Gregor,
Post by Gregor Schmidle
Einziges verbleibendes Problem ist wenn 2 oder mehrere Quelldaten in Spalte
B exakt denselben numerischen Wert haben.
Dann wird aus Spalte A die erste zutreffende Beschriftung genommen.
Kommt dies häufiger vor, dann sehe ich nur noch den Einsatz von VBA.
Folgendes Beispiel:
Deine Rubrikenbeschriftungen stehen in Spalte A, deine Werte in Spalte
B, dann trage das Ereignismakro in das Codemodul des betreffenden
Tabellenblattes:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngBereich As Range
If Target.Column = 2 Then
Set rngBereich = Me.Range("A1:" & _
Me.Cells(Me.Rows.Count, 2).End(xlUp).Address)
rngBereich.Copy Destination:=Me.Range("D1")
Application.CutCopyMode = False
Me.Range("D1").Select
ActiveCell.CurrentRegion.Sort Key1:=Range("E2"), _
Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom
End If
End Sub

Anmerkung:
Dein Originalbereich wird nach Zelle D1 kopiert und dort sortiert.
Aus diesem Bereich wird das Diagramm erstellt (ist nicht im Makro
enthalten).

MfG Frank
_________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned
Website: http://www.xl-faq.de
# Auftragsprogrammierung #
Gregor Schmidle
2005-10-13 11:45:20 UTC
Permalink
Post by unknown
Hallo Gregor,
Post by Gregor Schmidle
Einziges verbleibendes Problem ist wenn 2 oder mehrere Quelldaten in Spalte
B exakt denselben numerischen Wert haben.
Dann wird aus Spalte A die erste zutreffende Beschriftung genommen.
Kommt dies häufiger vor, dann sehe ich nur noch den Einsatz von VBA.
als "quick & dirty" Lösung könnte ich auch bei der Berechnung der Quelldaten
jeweils den Wert "1e-9 * ZEILE()" addieren um eine kleine Unterscheidung zu
erzwingen.
(Natürlich nur wenn die Quelldaten nicht in dem Bereich liegen..., z.B
Prozentzahlen)

Auf jeden Fall herzlichen Dank für die Unterstützung!
Gregor
Alexander Wolff
2005-10-13 12:26:49 UTC
Permalink
Post by Gregor Schmidle
als "quick & dirty" Lösung könnte ich auch bei der Berechnung der
Quelldaten jeweils den Wert "1e-9 * ZEILE()" addieren um eine kleine
Unterscheidung zu erzwingen.
(Natürlich nur wenn die Quelldaten nicht in dem Bereich liegen..., z.B
Prozentzahlen)
Von solchen Schweinereien mache ich auch oft Gebrauch :)
--
Hallo + Gruss Alexander (WinXP Home SP1 - Office 2000 SP3) 6----5----7-2
unknown
2005-10-13 13:14:07 UTC
Permalink
Hallo Gregor,
bitte, gern geschehen. Nettes "quick & dirty"! :-)

MfG Frank
_________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned
Website: http://www.xl-faq.de
# Auftragsprogrammierung #

Loading...