Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
904to908
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
904to908
904to908
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dynamisches Punkte-Diagramm

Dynamisches Punkte-Diagramm
10.09.2007 13:34:24
roger
Hallo,
Ich habe ein punkte-diagramm und will dieses jeden Tag um einen Eintrag erweitern. Das heisst, in Spalte A ist das Datum, Spalte B und Spalte C enthalten Werte. Jeden Tag kommt nun eine weitere Zeile dazu. Beginnen tut dies ab zeile 26. Kann mir da jemand helfen? Ich habe bereits gesucht und etwas über ein Balkendiagramm gefunden. Das ist aber nicht das was ich brauche.
Vielen Dank,
Roger

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamisches Punkte-Diagramm
10.09.2007 13:42:00
Beverly
Hi Roger,
schau mal auf meine HP, Seite "Diagramme". Dort findest du das Beispiel "Dynamisches Diagramm1" mit einer Formellösung
Link zur Datei
Oder auf der Seite "Diagramm m. VBA" das Beispiel "Dynamischer Datenbereich" mit VBA
Link zur Datei
________________________________________

Anzeige
AW: Dynamisches Punkte-Diagramm
10.09.2007 16:03:00
roger
Hallo Karin,
danke für deine Antwort. Ich habe jedoch probleme mit der Ausführung deiner Beispiele. Wenn ich den Namen vergeben will mit dem Bereich, erhalte ich eine Fehlermeldung. Hängt dass mit dem Dateinamen zusammen? Wo muss ich diesen ".xls" eingeben? Und muss ich zuerst ein Diagramm machen und dann Namen vergeben?
Vielen Dank für Deine Antwort,
Roger

AW: Dynamisches Punkte-Diagramm
10.09.2007 17:28:00
Beverly
Hi Roger,
der Name ist unabhängig vom Diagramm. Es spielt also keine Rolle, ob du ihn vor oder nach dem Diagramm erstellst. Aber wenn du ihn als Datenquelle im Diagramm angeben willst, muss er natürlich bereits existeren.
Wenn deine Arbeitsmappe noch nicht gespeichert wurde, dann musst du den Dateinamen ohne ".xls" angeben.
Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
10.09.2007 20:27:47
roger
Hallo Karin,
danke für Deine Antwort. Ich habe mich nun für Deine Lösung per VBA entschieden. Habe den Code bereits eingebaut. Nun ist aber mein Zellbereich nur die Spalten V,W&X. Die Zeilen werden jeden Tag um 1 erweitert. Das Diagramm gibt aber wenn die Zeilen erweitert werden, die Spalten vor V auch noch aus. Was mache ich falsch?
Danke für Deine Antwort,
Roger

AW: Dynamisches Punkte-Diagramm
10.09.2007 21:06:11
Beverly
Hi Roger,
lade doch deine Mappe mal hoch, da lässt sich das besser nachvollziehen.
Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
10.09.2007 21:33:00
roger
Hallo Karin (oder Beverly)
Ich habe Dir die Tabelle angehängt. Ist jedoch stark abgespeckt. Die Spalten für das Diagramm sind V (für das Datum) und W&X mit dazugehörigen werten. Ich kann das Diagramm auf diese 3Spalten einrichten aber es fügt sofort selbstständig viele Spalten an. Ich hoffe du siehst den Fehler.
Gruss,
Roger

Die Datei https://www.herber.de/bbs/user/45870.xls wurde aus Datenschutzgründen gelöscht


AW: Dynamisches Punkte-Diagramm
10.09.2007 21:59:00
Beverly
Hi Roger,
der Code sollte so aussehen

Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long        ' Variable für die letzte belegte Zeile
Dim chDiagramm As Chart     ' Variabel für das Diagramm als Objekt
'   Bildschirmaktualisierung aus
Application.ScreenUpdating = False
With ActiveSheet
'       letzte belegte Zeile ermitteln
loLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 22)), .Cells(.Rows.Count, 22).End(xlUp).Row,  _
.Rows.Count)
'       prüfen ob Änderung im definierten Bereich liegt
If Target.Column = 22 Then
'           der Variablen das Diagrammobjekt zuweisen
Set chDiagramm = .ChartObjects(1).Chart
'           Datenbereich insgesamt dem Diagramm zuweisen
chDiagramm.SetSourceData Source:=.Range(.Cells(26, 22), .Cells(loLetzte, 24)),  _
PlotBy:=xlColumns
End If
End With
'   Bildschirmaktualisierung ein
Application.ScreenUpdating = True
'   Variable leeren
Set chDiagramm = Nothing
End Sub


Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
10.09.2007 22:12:51
roger
Hallo Karin, der Code funktioniert nicht. Kann es sein, dass dies so ist, weil ich Formeln in den Zellen stehen habe die noch beschrieben werden? Die Formeln sind in dem Stil: =Wenn(Tabelle1!A2="";"";Tabelle1!A2).
Danke für Deine Antwort,
Roger

AW: Dynamisches Punkte-Diagramm
10.09.2007 22:48:18
Beverly
Hi Roger,
ja, das sollte der Auslöser für das Problem sein, weil da die letzte belegte Zelle falsch ermittelt wird. Versuche es mal so

Private Sub Worksheet_Change(ByVal Target As Range)
Dim loZeile As Long         ' Variable für Zeile
Dim chDiagramm As Chart     ' Variabel für das Diagramm als Objekt
loZeile = 26
'   Bildschirmaktualisierung aus
Application.ScreenUpdating = False
With ActiveSheet
'          prüfen ob Änderung im definierten Bereich liegt
If Target.Column = 22 Then
'           letzte belegte Zeile ermitteln
Do
loZeile = loZeile + 1
Loop While Not IsEmpty(.Cells(loZeile, 22))
'           der Variablen das Diagrammobjekt zuweisen
Set chDiagramm = .ChartObjects(1).Chart
'           Datenbereich insgesamt dem Diagramm zuweisen
chDiagramm.SetSourceData Source:=.Range(.Cells(26, 22), .Cells(loZeile - 1, 24)),  _
PlotBy:=xlColumns
End If
End With
'   Bildschirmaktualisierung ein
Application.ScreenUpdating = True
'   Variable leeren
Set chDiagramm = Nothing
End Sub


Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
11.09.2007 07:28:00
roger
Hallo Karin,
danke für Deine Antwort. War gestern schon spät und komme heute erst am Abend dazu den Code zu testen. Vielen Dank aber im Voraus und ich werde mich noch melden.
Gruss, Roger

AW: Dynamisches Punkte-Diagramm
11.09.2007 19:56:34
roger
Hallo Karin, es funktioniert immer noch nicht. Die Werte W&X (y-werte) werden jetzt nur noch in eine Reihe geschrieben und nur der letzte Eintrag. Als Namen für die Reihe wird dafür aus allen Zeilen der letzten Spalte alle Daten eingefügt. Weisst Du weiter? Es ist aber so, dass die Zellformeln definitiv ein Problem für diesen Code darstellen.
Gruss, Roger

AW: Dynamisches Punkte-Diagramm
11.09.2007 21:34:00
roger
Hallo Karin, kannst Du mir bei dem Code weiterhelfen? Ich habe die Frage (Siehe vorherige Antwort) als offen gepostat. Vieleicht hast Du sie desswegen nicht gekriegt.
Gruss Roger

Anzeige
AW: Dynamisches Punkte-Diagramm
11.09.2007 21:35:00
Beverly
Hi Roger,
in der angehängten Arbeitsmappe befinden sich unterhalb des lettzen Eintrags auch noch Formeln und es gibt damit kein Problem

Die Datei https://www.herber.de/bbs/user/45917.xls wurde aus Datenschutzgründen gelöscht


Bis später,
Karin

AW: Dynamisches Punkte-Diagramm
11.09.2007 21:48:00
roger
Hallo Karin,
ich habe da mal bei Zeile 75 noch drei Formeln eingefügt 75-78 und es verhält sich wieder so, dass es irgendwie nicht richtig funktioniert. Keine Ahnung wie weiter. Ich komme jedoch heute nicht mehr dazu.

Die Datei https://www.herber.de/bbs/user/45919.xls wurde aus Datenschutzgründen gelöscht


Gruss,
Roger

Anzeige
AW: Dynamisches Punkte-Diagramm
11.09.2007 22:40:39
Beverly
Hi Roger,
das kann so auch gar nicht funktionieren, weil das Ergebnis der Formel kein Datum ist! Die X-Werte sind Daten (Mehrzahl von Datum) und Excel erkennt sie auch als Datum. Intern ist das Datum aber eine Zahl, z.B. ist der 01.01.2007 intern 39083. Die Zahl, die sich aus der Formel ergibt, ist jedoch 70. Wie soll Excel eine Wertereihe mit aufsteigenden X-Werten denn interpretieren, wenn plötzlich eine Zahl kommt, die nur einen Bruchteil der anderen Werte ausmacht? Das wäre dasselbe, als wenn du eine Leiter hochsteigst und plötzlich fehlt eine Sprosse - also streikt Excel und zeigt die tollsten Sachen an.
Der Code ist so geschreiben, dass die Zelle in Spalte V ermittelt wird, in der kein Wert drinsteht, die Excel also quasi als ohne Inhalt erkennt, da mir nicht bekannt war (das ging aus deinem ersten Beispiel nicht hervor), dass zwischen den Datumswerten und den Formeln keine leeren Zellen vorkommen, wie es jetzt in diesem Beispiel ist. Aber man kann das ändern, indem nicht geprüft wird ob die Zelle keinen Inhalt hat, sondern ob der Inhalt ein Datum ist. Du müssest die eine Zeile durch diese austauschen

Loop While IsDate(.Cells(loZeile, 22))


Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
12.09.2007 08:53:00
roger
Hallo Karin,
gestern war ich doch schon etwas müde. Ich hatte da einige Fehler bei der Beispielmappe gemacht. Habe das Korrigiert und Deine neue Zeile ersetzt. Jetzt funktioniert es! Danke. Nur aktualisiert das Diagramm nicht. Erst wenn ich in der Spalte V weiter unten eine leere Zelle zum Bsp. lösche. Ich denke wenn das noch korrigiert ist, läuft es super! Vielen Dank im Voraus,
Gruss, Roger
https://www.herber.de/bbs/user/45926.xls

AW: Dynamisches Punkte-Diagramm
12.09.2007 10:14:00
Beverly
Hi Roger,
ich kann es jetztnicht mehr nachvollziehen, da die Links auf die vorhergehenden Beispiele nicht mehr funktionieren und ich jetzt keins davon zur Verfügung hab, aber ich hatte den Eindruck, dass da in Spalte V Einträge von Hand standen und keine Formeln - die kamen erst weiter unten. Aber sei es wie es sei - da die Einträg nicht in Spalte V erfolgen sondern numehr in Spalte A, muss diese überwacht werden, ob dort ein Eintrag stattgefunden hat

If Target.Column = 1 Then


Dann kannst du aber auch den vorhergehenden Code nehmen, denn der funktioniert ja, wenn unterhalb des letzten eingetragenen Wertes keine Formeln folgen. Und er ist wesentlich schneller, da nicht erst alle Zeilen geprüft werden müssen, ob ein Inhalt vorhanden ist oder nicht.
Bis später,
Karin

Anzeige
AW: Dynamisches Punkte-Diagramm
12.09.2007 11:46:00
roger
OK, ich glaube ich sehe jetzt das Problem. Das Datum von Spalte V wird von Spalte A bezogen, wenn dieses mit einem Datum gefüllt ist. Spalte A wiederum erhält das Datum von einer andern Tabelle zB. Tabelle3. Wiederum wenn leer ist bleibt leer wenn die andere Tabelle (TAbelle 3) ein Datum aufweist, wird dieses auch in A geschrieben. Ich mache es nun so, dass ich schauen will ob in der Tabelle3 ein Datum eingetragen wird. Da hat es keine Formel darunter. Kannst du mir noch sagen, wie ich das in deinem Code reinschreiben muss, dass eben in der Tabelle3 in Spalte A gesucht wird, ob sich etwas geändert hat?
Vielen Dank und Gruss, Roger

AW: Dynamisches Punkte-Diagramm
12.09.2007 12:01:00
Beverly
Hi Roger,
du musst die Spaltennummer - wie schon beschrieben - anpassen, in der die Eingabe erfolgt. Der gesamte Code gehört dann ins Codemodul der Tabelle3, da du diese ja überwachst.
Bis später,
Karin

AW: Dynamisches Punkte-Diagramm
12.09.2007 19:54:16
roger
Hallo Karin. Es funktioniert noch nicht ganz so wie ich will. Ich lege das Projekt jetzt aber eine Zeit lang auf Eis. Vielen Dank für Deine Hilfe,
Roger

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige