Diagramm dynamisch -

Bild

Betrifft: Diagramm dynamisch - von: Julia
Geschrieben am: 14.03.2005 09:19:36

Es geht noch mal um folgendes Problem:
https://www.herber.de/forum/messages/582542.html

Ich hab folgende Datengrundlage:
https://www.herber.de/bbs/user/19398.jpg

Zur Erklärung:
Ich habe nun eine Möglichkeit gefunden, dass immer nur aus den Daten der letzten 12 Monate ein Diagramm erzeugt wird, eigentlich ganz simpel :)

'Lies Felder der Tabelle 1 aus.
Endwert = Range("S3").Value
Anfangswert = Range("S4").Value

'Festlegung des Wertebereichs des Diagramms
cht.SetSourceData Source:=Sheets("Tabelle1").Range("A" + Anfangswert + ":O" + Endwert), PlotBy:=xlColumns

S3 und S4 sind zwei Zellen, die mit Formeln hinterlegt wurde. Ich finde den akuellsten Wert heraus und rechne dann minus 11 :) damit ich auf 12 Werte komme.

So einfach, so schön und nun zu meinem eigentlichen Problem:
Wenn ich nun das Diagramm erzeugen lassen, werden die Balken schön angezeigt, allerdings läßt die Legende dann zu wünschen übrigen, da im Wertebereich des Diagramms nicht mehr die Zuordnung liegt (quasi Zeile 3 o.ä.)
Da steht immer nur Reihe. oder so.

Ich überlege jetzt, auf einem 2. tabellenblatt diese zeile zu kopieren und dann die errechnete datengrundlage auch in das 2. blatt zu kopieren und erst dann DARAUS das Diagramm zu erzeugen.

Jedoch 1. hapert es schon daran, dass ich nicht weiss, wie ich den Bereich in Tabelle2 kopieren soll
und 2. hoffe ich, dass es evtl. noch eine elegantere Lösung gibt :)


Zudem würd ich gerne einen Titel, etc festlegen, jedoch wenn ich

cht.ChartTitle.Text = "Test"
cht.ChartTitle.Shadow = True

schreib, sagt mir das VBA-Dingens, dass die Texteigenschaft nicht festgelegt werden kann. Es hat aber definitiv schon einmal geklappt.

Hilfe!!

Danke sehr.

Bild


Betrifft: AW: Diagramm dynamisch - von: Chris
Geschrieben am: 14.03.2005 10:59:02

Hi Julia,

ich würde das Diagramm immer wieder komplett neu zeichnen, per Knopfdruck - ist eigentlich nicht so schwer. Ich hatte mal ein ähnliches Problem, weiss aber nicht ob´s Probleme bei Office 97 gibt - ich arbeite auf XP.

Mein Vorschlag:

i = 4
Do
If Cells(i, 1).Value <> "" Then
i = i + 1
End If
Loop Until Cells(i, 1).Value = ""
'Damit bekommst du die erste leere Zelle in Spalte 1
endzeile = i - 1
Cells(1, 1).Select
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Tabelle1").Range("A1"), PlotBy:=xlColumns
'Erstelle eine neue Reihe
ActiveChart.SeriesCollection.NewSeries
'Position der Bezeichnung für die X-Achse
ActiveChart.SeriesCollection(1).XValues = "=Tabelle1!R" & endzeile - 11 & "C2:R" & _
endzeile & "C2"
'Position der Werte für die Reihe
ActiveChart.SeriesCollection(1).Values = "=Tabelle1!R" & endzeile - 11 & "C17:R" & _
endzeile & "C17"
'Name der Reihe
ActiveChart.SeriesCollection(1).Name = "=Tabelle1!R3C17"
ActiveChart.Location Where:=xlLocationAsObject, Name:="Tabelle1"

Damit wird ein Diamgramm gezeichnet, das die Werte in Spalte 17 ("Alle") der letzten 12 Monate darstellt.
Wenn du willst, kann du dass mal probieren, wenn´s klappt schreibe ich dir was dazu, wie du die Position festlegen, Formatierungen vornehmen und das alte Diagramm löschen kannst

Gruss

Chris


Bild


Betrifft: AW: Diagramm dynamisch - von: Julia
Geschrieben am: 14.03.2005 11:14:07

Hi Chris,
ich habe jetzt einen neuen Button erzeugt (der Quellcode den ich angegeben hatte, lag ja auch hinter einem Button.) und hab deinen code dahinter gepackt.

und..
ach, ich lad die tabelle jetzt einfach mal hoch.
sind ja keine sensiblen daten :D
schnauze voll. :)

https://www.herber.de/bbs/user/19620.xls


dann siehst du, was mein button macht
und deiner ist der andere halt :D

diagramm 7 ist das beispieldiagramm, wie es in etwa aussehen soll, nur dass die legende halt falsch ist und da die Titelzeile hin soll (Vertrieb, Vertrieb 2, etc)

Dank dir chris!


Bild


Betrifft: AW: Diagramm dynamisch - von: Chris
Geschrieben am: 14.03.2005 11:40:51

Hi Julia,

ich hab ein bisschen was verändert - hatte dich falsch verstanden. Die letzten 12 Monate werden jetzt daran ermittelt, ob in der letzten Spalte eine Null steht - Kriterium kannst du nat. auch noch ändern.

Ich wusste nicht genau welche Infos ins Diagramm sollen, hab deshalb alle Reihen bis Spalte "O" genommen - hattest du, glaub ich, auch.

https://www.herber.de/bbs/user/19621.xls

Gruss

Chris


Bild


Betrifft: AW: Diagramm dynamisch - von: Julia
Geschrieben am: 14.03.2005 12:02:45

oh super, genial :)
es klappt.
danke danke danke :)

kennst du ne gute seite, wo man dann so n bisserl formatierungssachen jetzt noch hat?
Achsenbeschriftung y-Achse
Titel des Diagramms

Und so wie ich mir das jetzt vorstell, ist das sicherlich auch n leichtes für dich, aus den absoluten zahlen prozentangaben zumachen? zusätzlich :D entweder neuer button :D oder gleich in die methode mit rein, auf n neues tabellenblatt :)

*hust*
und ich will ja nicht dreist erscheinend :D aber ich hab das gefühl, dass du da ganz gut durchsteigst, dass du es auch könntest,
dass man noch für den zeitraum einfach eine summe aller werte pro abteilung in einem diagramm darstellen könnte :D

tadaa :) ich hab meinen vermurksten kram mal rausgenommen :D
https://www.herber.de/bbs/user/19625.xls

Kann man dir irgendwie was gutes tun? :)


Bild


Betrifft: AW: Diagramm dynamisch - von: Chris
Geschrieben am: 14.03.2005 12:24:28

Hi Julia,

sicher mir kann man immer was Gutes tun - woran hast du so gedacht? ;o)
, aber egal - wer kann bei solch netten Worten schon "Nein" sagen :o); also das mit den Formatierungen ist ziemlich einfach - das bekommst du auch leicht über den Makro-Recorder raus, ich habs aber schon in die Mappe reingepackt!

https://www.herber.de/bbs/user/19629.xls

Das mit den Prozentwerten und der Summe ist generell gesehen auch kein Problem, aber etwas aufwendiger:
- für welche Spalten soll denn eine Summe gebildet werden, diese dann wahrscheinlich auch in Prozent, richtig?

Beschreib mal ein bisschen genauer, dann kann ich dir sicher helfen :o)

Gruss

chris


Bild


Betrifft: AW: Diagramm dynamisch - von: Julia
Geschrieben am: 14.03.2005 12:51:27

Also :)
Summenbildung für alle Spalten von C - O. Das kann ruhig absolut geschehen; das ist ausreichend,denke ich.

die frage ist jetzt, für welchen bezug.
wieder die letztes 12 monate oder als eine art Jahresübersicht: alle werte aus 2004, aus 2005.. etc. schwierige sache. *grübel*
Ah, nun hab ich es:
Datengrundlage für Summe Spalten C - O: das laufende Jahr; wo Spalte A = aktuelles Jahr
Datengrundlage für Prozentwerte: gleiche wie für absolut :)

Das mit den Formatierungen ist wirklich einfach. Ich setz mich mich dem Makrorecorder noch mal auseinander. Dank dir :)

Hm, ich kann html - brauchst du ne homepage? :)
Julia


Bild


Betrifft: aktuelle Datei von: Julia
Geschrieben am: 14.03.2005 12:54:09

hab da eben das angepaßt. n bisserl.
da isse: https://www.herber.de/bbs/user/19633.xls


Julia


Bild


Betrifft: AW: aktuelle Datei von: Chris
Geschrieben am: 14.03.2005 13:31:59

Hi Julia,

ich hab da mal was vorbereitet.... :o)

https://www.herber.de/bbs/user/19636.xls

Da es ein Diagramm mit Prozentwerten geben soll, müssen diese Werte auch irgendwo auftauchen - sieht also ein bisschen doof aus, das ganz. Du könntest höchstens für den kompletten Block die Schrift- und Zellenfarbe auf Weiss setzten, dann würde man´s nicht sehen.

Die Sache mit der Summe ist von der Berechnung her echt simpel - wie du siehst. Aber nach meinem Kenntnisstand, kann man das nicht ins gleiche Diagramm packen, da du eine Wert für jeden einzelnen Monat brauchst und nicht für jede Spalte. Da sich die Bezüge auf diese Zeile aber nicht verändern, sondern nur deren Inhalt, kannst du dafür ein ganz normales Diagramm zeichnen, aber halt extra???

Gruss

Chris


Bild


Betrifft: AW: aktuelle Datei von: Julia
Geschrieben am: 14.03.2005 14:50:48

Super, das mit dem Diagramm selbst hab ich auch hinbekommen.
Sieht echt spitzenmäßig aus.
Danke danke danke :)

So, und nun Feierabend.
Tschöö


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Diagramm dynamisch - "