Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1356to1360
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
Inhaltsverzeichnis

Dynamisches Diagramm automatisieren

Dynamisches Diagramm automatisieren
29.04.2014 13:45:00
Shayev
Hallo zusammen,
ich möchte gerne ein Arbeitsblatt kopieren, auf diesem ist ein Diagramm abgebildet!! Wenn ich das Arbeitsblatt kopiere, funktioniert mein dynamisches Diagramm auf dem kopiertem Arbeitsblatt nicht mehr!! Es soll eine Vorlage sein, daher möchte ich die Anpassung automatisieren!! Bei meinem VBA Code bekomme ich folgende Fehlermeldung(siehe unterhalb), "Laufzeitfehler 424: Objekt erforderlich. Hat jemand einen Tip für mich? Danke
Gruß Shayev
Sub Test()
For i = 1 To Sheets("Overview").Range("G4")
Sheets("Master").Copy After:=Sheets(i)
ActiveSheet.Name = "Station" & i
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.SeriesCollection(1).Values = "Station" & i!OperationStarting
ActiveChart.SeriesCollection(2).Values = "Station" & i!Walk
ActiveChart.SeriesCollection(3).Values = "Station" & i!Manual
ActiveChart.SeriesCollection(4).Values = "Station" & i!Automatic
ActiveChart.SeriesCollection(5).Values = "Station" & i!TaktTime
ActiveChart.SeriesCollection(6).Values = "Station" & i!Other
ActiveChart.SeriesCollection(6).XValues = "Station" & i!Step
Next i
Sheets("Overview").Select
End Sub

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamisches Diagramm automatisieren
29.04.2014 14:30:47
Beverly
Hi,
versuche es mal auf diesem Weg:
Sub Test()
Dim i As Integer
For i = 1 To Sheets("Overview").Range("G4")
Sheets("Master").Copy After:=Sheets(i)
With ActiveSheet
.Name = "Station" & i
With .ChartObjects(1).Chart
.SeriesCollection(1).Values = Worksheets(ActiveSheet.Name).Range("OperatingStarting")
.SeriesCollection(2).Values = Worksheets(ActiveSheet.Name).Range("Walk")
.SeriesCollection(3).Values = Worksheets(ActiveSheet.Name).Range("Manual")
.SeriesCollection(4).Values = Worksheets(ActiveSheet.Name).Range("Automatic")
.SeriesCollection(5).Values = Worksheets(ActiveSheet.Name).Range("TaktTime")
.SeriesCollection(6).Values = Worksheets(ActiveSheet.Name).Range("Other")
.SeriesCollection(6).XValues = Worksheets(ActiveSheet.Name).Range("Step")
End With
End With
Next i
End Sub


Anzeige
AW: Dynamisches Diagramm automatisieren
29.04.2014 14:41:51
Shayev
Hallo Karin,
vielen dank für die schnelle Rückmeldung!Ich habe deinen Code ausgeführt und bekomme leider einen Laufzeitfehler 1004: Anwendungs- oder objektdefinierter Fehler!! Woran könnte es liegen? Danke im Voraus!
Gruß Shayev

AW: Dynamisches Diagramm automatisieren
29.04.2014 15:03:11
Beverly
Hi,
an welcher Stelle im Code kommt der Fehler? Ich kann das nicht nachvollziehen denn bei mir kommt kein Fehler. Das mag aber damit zusammenhängen, dass meine Datei anders als deine aussieht und da ich sie nicht kenne, ist es nicht möglich, etwas dazu zu sagen.


Anzeige
AW: Dynamisches Diagramm automatisieren
29.04.2014 15:24:35
Shayev
Hallo Karin,
ich kann dir nicht erklären wieso, aber ich habe den Code minimal verändert(siehe unten)und so funktioniert der Code ohne Laufzeitfehler, das Problem hierbei ist, meine Diagramme sind trotzem auf den kopierten Arbeitsblättern nicht dynamisch! Und wenn ich beim Diagramm auf Daten auswählen gehe, dann erscheinen dort keine Namen wie "OperationStarting" usw.!
Sub Test2()
Dim i As Integer
For i = 1 To Sheets("Overview").Range("G4")
Sheets("Master").Copy After:=Sheets(i)
ActiveSheet.Name = "Station" & i
With ActiveSheet.ChartObjects(1).Chart
.SeriesCollection(1).Values = Worksheets(ActiveSheet.Name).Range("OperationStarting")
.SeriesCollection(2).Values = Worksheets(ActiveSheet.Name).Range("Walk")
.SeriesCollection(3).Values = Worksheets(ActiveSheet.Name).Range("Manual")
.SeriesCollection(4).Values = Worksheets(ActiveSheet.Name).Range("Automatic")
.SeriesCollection(5).Values = Worksheets(ActiveSheet.Name).Range("TaktTime")
.SeriesCollection(6).Values = Worksheets(ActiveSheet.Name).Range("Other")
.SeriesCollection(6).XValues = Worksheets(ActiveSheet.Name).Range("Step")
End With
Next i
End Sub

Anzeige
AW: Dynamisches Diagramm automatisieren
29.04.2014 15:30:03
Shayev
Ich habe es nochmal mit dem Code von dir versucht, da war ein Rechtschreibfehler drin ))! Aber trotzdem, funktioniert es leider nicht mit dem dynamischem Diagramm!
Gruß Shayev

AW: Dynamisches Diagramm automatisieren
29.04.2014 16:13:02
Beverly
In deinem Eröffnungsbeitrag bezogst du dich darauf, dass ein Laufzeitfehler auftritt - darauf habe ich geantwortet.
Ändere den Code wie folgt:

.SeriesCollection(1).Values = "=Station" & i & "!OperationStarting"
.SeriesCollection(1).XValues = "=Station" & i & "!Step"
.SeriesCollection(2).Values = "=Station" & i & "!Walk"
.SeriesCollection(3).Values = "=Station" & i & "!Manual"
.SeriesCollection(4).Values = "=Station" & i & "!Automatic"
.SeriesCollection(5).Values = "=Station" & i & "!TaktTime"
.SeriesCollection(6).Values = "=Station" & i & "!Other"


Anzeige
AW: Dynamisches Diagramm automatisieren
29.04.2014 16:43:33
Shayev
Hallo Karin,
super vielen vielen dank :)), jetzt klappt es!! Eine letzte Frage noch. Meine kopierten Arbeitsblätter zeigen am Diagramm keine x-Werte an. An sich wird das Diagramm fortgeschrieben, aber die x-Werte werden nicht angezeigt! Obwohl es in der Vorlage die kopiert wird funktioniert!
Gruß Shayev

AW: Dynamisches Diagramm automatisieren
29.04.2014 16:50:55
Beverly
Hi,
ohne deine Arbeitsmappe zu kennen kann man dazu nichts sagen.


AW: Dynamisches Diagramm automatisieren
29.04.2014 17:29:35
Shayev
Karin vielen Dank für deine Hilfe!! Ich versuche es zu lösen, falls nicht, melde ich mich nochmal morgen!
Gruß Shayev

Anzeige
AW: Dynamisches Diagramm automatisieren
30.04.2014 09:31:56
Shayev
Hallo Karin,
ich konnte das Problem leider nicht beheben, bei meiner Vorlage die kopiert wird, werden die x-Werte mit folgenden Formeln gezählt:
=WENN(B8"";MAX($A$7:A7)+1;"")
=WENN(B9"";MAX($A$7:A8)+1;"")
usw. hier nimmt das Diagramm die x-Werte im Diagramm auf! Wenn ich aber das Arbeitsblatt kopiere, und das kopierte Arbeitsblatt ausfülle,funktioniert die x-Achsenbeschriftung im kopiertem Arbeitsblatt leider nicht mehr!! Ich denke es liegt vielleicht an dem Format, ich habe versucht die Formeln in Zahlen umzuwandeln, leider funktioniert es trotzdem nicht! Hat jemand einen Tip für mich?
Gruß Shayev

Anzeige
AW: Dynamisches Diagramm automatisieren
30.04.2014 09:37:53
Beverly
Hi,
in meiner Arbeitsmappe funktioniert alles korrekt.
Lade doch mal deine Arbeitsmappe hoch, damit man sich das anschauen kann - eine Ferndiagnose ist leider nicht möglich.


AW: Dynamisches Diagramm automatisieren
30.04.2014 09:54:02
Shayev
Hallo Karin,
danke für deine Rückmeldung! Anbei der Link zur Datei! Mir sind gerade noch ein paar Fehler aufgefallen, beim erzeugen meiner dynamischer Diagramme, wird der Diagrammbereich nicht automatisch angepasst, woran könnte es liegen, Arbeitsblatt: "Line Balancing Summary Charts", Diagramm: Process Details all Operators und Arbeitsblatt: "Master", Diagramm : Process Details 10
https://www.herber.de/bbs/user/90404.zip
Vielen Dank
Gruß Shayev

Anzeige
AW: Dynamisches Diagramm automatisieren
30.04.2014 10:17:28
Beverly
Hi,
also ich kann erstmal keinen Fehler feststellen - in den per Code kopierten Diagrammen sind die richtigen Namen als Wertebereiche der Datenreihen eingetragen. Da du jedoch eine Arbeitsmappe hochgeladen hast, die keine Daten enthält, die einen Fehler simulieren, kann ich leider nichts weiter dazu sagen.


AW: Dynamisches Diagramm automatisieren
30.04.2014 10:52:19
Shayev
Sorry, anbei ein Link zur ausgefüllten Datei!
Siehe Arbeitsblätter Station1 und Station2, das Diagramm "Process Details 10" auf den jeweiligen Arbeitsblättern zeigen mir die x-Werte nicht an und der Diagrammbereich des Diagramms "Process Details all Operators" im "Line Balancing Summary Charts" wird nicht automatisch angepasst!
https://www.herber.de/bbs/user/90407.zip

Anzeige
AW: Dynamisches Diagramm automatisieren
30.04.2014 11:29:08
Beverly
1. Tabelle Master:
- als Wertebereich für die Achsenbeschriftung ist im Diagramm ein Zellbereich und nicht der definierte Name angegeben
- lösche alle Werte in Spalte A alle werte, sodass das Diagramm vollkommen leer ist
2. Tabelle Line Balancing Summary Charts:
- benutze für alle im Diagramm verwendeten definierten Namen nicht ANZAHL2() sondern ANZAHL(), denn ANZAHL2() zählt auch Formeln, obwohl ihr Ergebnis leer ist.


AW: Dynamisches Diagramm automatisieren
30.04.2014 13:41:11
Shayev
Danke! Punkt 2. habe ich abgearbeitet, vielen Dank funktioniert!! :)) Punkt 1. funktioniert bei mir leider noch nicht, ich habe alle Werte in Spalte A gelöscht und im Master Arbeitsblatt, beim Diagramm unter Daten auswählen für die x-Werte den Namen nochmal eingetragen, geht leider trotzdem nicht!
Gruß Shayev

Anzeige
AW: Dynamisches Diagramm automatisieren
30.04.2014 16:16:26
Beverly
Bei mir schon.
Ich habe einfach mal ein paar beliebige Daten eingetragen, nachdem 2 Tabellenblätter erstellt wurden.
https://www.herber.de/bbs/user/90421.zip


AW: Dynamisches Diagramm automatisieren
30.04.2014 16:26:42
Shayev
Hallo Karin,
ich habe das Diagramm einfach nochmal erstellt, jetzt funktioniert es!! Vielen vielen dank nochmal :)))
Gruß Shayev

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige