Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
800to804
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
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Diagramme erstellen

Diagramme erstellen
20.09.2006 16:16:07
Peter
Hallo Excelfreunde
kann mir bei meinem Problem jemannd weiterhelfen.
Ich erhalte aus mehreren Dateien (Excel) Daten die in dieser Jahresdatei zusammengefasst sind.
In dieser Datei soll für jedes Werkzeug (Spalte A) aus der Zeit und der Häufigkeit und aus jedem Monat ein Diagramm erstellt werden.
Hier als Beispiel die Trayzufuhr.
Ich kann zwar das Diagramm mit seinen Einstellungen copieren, muss dann aber für jedes weitere Werkzeug die Zeilennummer für die Standzeit und die Häufigkeit ändern.
Dies ist sehr umständlich, da die Originaldatei aus etwas 150 Werkzeugen besteht.
Mein Wunsch währe folgender.
1. Komplett für alle in dieser Datei enthaltenen Werkzeuge Diagramme zu
erstellen.
oder
2. Nur wenn unter einem Monat jeweils Standzeit und Häufigkeit eingegeben
wurde, auch ein Diagramm für das Werkzeug zu erstellen.
Ist es möglich dies automatisch zB mit Vba zu realisieren.?
Wenn ja dann bitte für Anfänger erklären.
Hier die Datei:
https://www.herber.de/bbs/user/36859.xls
Gruß Peter Schilling

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramme erstellen
21.09.2006 01:28:26
fcs
Hallo Peter,
nach etwas Tüftelarbeit bei der automatischen Vergabe der Registernamen (Länge ist begrenzt, bestimmte Sonderzeichen sind nicht nicht zulässig) für die Diagramme klappt es jetzt.
Wenn die Summe von Häufigkeit und Stunden in einer Zeile &gt0 ist wird vom Makro ein Diagramm erzeugt.
Im Titel des Diagramms ist auch eine Nummer für Gruppe enthalten. Diese Nummern muss du in Spalte AB eintragen, dann werden sie im Diagramm vom Makro eingetragen.
https://www.herber.de/bbs/user/36878.xls
Gruß
Franz
AW: Diagramme erstellen
21.09.2006 09:36:00
Peter
Hallo Excelfreunde
danke für die Antworten.
beide Versionen klappen, wobei ich die Version von fcs (franz) favorisiere.
Vier Fragen habe ich zu dieser Version noch.
1. Es wird bei jedem Ausführen des Macros eine neue "MusterDiag" erzeugt.
Kann ich dies unterbinden.? (MusterDiag 2, 3, 4 usw.)
2. Gruppennamen in "AB" eintragen. Das verstehe ich nicht wie das gemeint ist.
Diese Datei soll für 6 verschiedene Gruppennummern mit den selben einstellungen
gelten. Kann die Nummer nicht aus der Musterdiag entnommen werden.!!!
3. Kann ich per Macro alle Diagramme (Außer MusterDiag) löschen. ?
4. Wenn zB das Macro mehrmals ausgeführt wird, (Wegen Aktualisierung) dann kommt
eine Fehlermeldung. (Laufzeitfehler 13 Typen unverträglich)
Kannst du hier weiterhelfen.
Gruß Peter
https://www.herber.de/bbs/user/36883.xls
Anzeige
AW: Diagramme erstellen
21.09.2006 14:15:49
fcs
Hallo Peter,
### 1. Es wird bei jedem Ausführen des Macros eine neue "MusterDiag" erzeugt.
### Kann ich dies unterbinden.? (MusterDiag 2, 3, 4 usw.)
Ich hab mal alle Diagramme außer MusterDiag gelöscht und das Makro gestartet. Es wurden keine Extra-Kopien des Musters angelegt. Dies passiert evtl. wenn man das Makro mehrmals starte, da dann das Makro mit Fehler abbricht, da ein Registername doppelt vergeben werden soll.
### 2. Gruppennamen in "AB" eintragen. Das verstehe ich nicht wie das gemeint ist.
### Diese Datei soll für 6 verschiedene Gruppennummern mit den selben einstellungen
### gelten. Kann die Nummer nicht aus der Musterdiag entnommen werden.!!!
Wenn die Nummer für alle Diagramme in der Arbeitsmappe gleich ist, dann kann man die Nummer fest im Makro eintragen. Falls die Nummer sich für die verschiedenen Werkzeuge ändert, dann muss man in dem Makro irgendwo die Info herholen. Im Moment holt das Makro diese Info aus der Spalte AB. Aber ggf sind auch andere Lösungen möglich.
### 3. Kann ich per Macro alle Diagramme (Außer MusterDiag) löschen. ?
Hier der Code zum Löschen der Diagramme.

Sub DiagrammeLoeschen()
Dim diagramm As Chart
For Each diagramm In ActiveWorkbook.Charts
Application.DisplayAlerts = False
If diagramm.Name <> "MusterDiag" Then diagramm.Delete
Application.DisplayAlerts = True
Next diagramm
End Sub

### 4. Wenn zB das Macro mehrmals ausgeführt wird, (Wegen Aktualisierung) dann kommt
### eine Fehlermeldung. (Laufzeitfehler 13 Typen unverträglich)
Wenn das Makro mehrmals ausgeführt wird, dann versucht das Makro den gleichen Namen ein zweites mal für ein Diagramm zu vergeben.
Abhilfe: vorher alle Diagramme außer dem Muster löschen
oder
Im Makro vor der Umbenennung des neuen Blattes prüfen, ob der ermittelte Blattname schon vorhanden ist, und dann geeignete Maßnahmen ausführen.
Gruß
Franz
Anzeige
AW: Diagramme erstellen
21.09.2006 20:01:14
Peter
Hallo Excelfreund
es klappt alles wunderbar.
Das mit der Gruppennummer habe ich immer noch nicht gefunden.
Aber ich schreibe die Gruppennummer jetzt in das Macro. Ist OK so. :-)
Bevor ich aktualisiere, lösche ich erst alle Diagramme. Ist Ok so. :-)
Noch eine letzte Frage.
Wie kann mann die Maschine zu der die Werkzeuge gehöhren mit auf dem Diagramm anzeigen/einfügen lassen.?
Die Maschine ist immer "gelb" über den Werkzeugen hinterlegt.
Jetzt sieht das Diagramm so aus:
"Störzeiten 2006 Gruppe 7621 Trayzufuhr"
Hier fehlt noch die zugehöhrige maschine (gelb hinterlegt in der Eingabetabelle)
die jeweilige Maschine kann etwas weiter hinter diesem Text stehen.
Kann die Schriftgröße noch korrigiert oder größer vorgegeben werden.
Gruß Peter
Anzeige
AW: Diagramme erstellen
21.09.2006 22:56:44
fcs
Hallo Peter,
Mit der Gruppen-Nummer ist folgendes: Ich hatte es so eingerichtte, dass wenn die Nummer in Spalte AB zu jedem Maschinen-Teil eingetragen wird, dann wird sie auch im vom Makro im Diagramm-Titel eingetragen. Man könnte es auch so machem, dass die Gruppennummer nur einmal für die Maschine eingetragen wird oder in einer Tabelle eine Liste der Maschinen mit den zugehörigen Gruppennummer, die man dann im Makro auswertet.
Ich hab hier einen Code-Abschnitt der im Diagramm ein Textfeld anlegt, in dem die Bezeichnung der Maschine eingetragen wird. Mit dem Code wird die Maschine unter dem Diagrammtitel eingetragen. Du kannst das Textfeld aber noch beliebig plazieren. Die Variable "Bereich" mit der Maschinen-Bezeichnung wird schon zu Begnn des Makros mit dem Wert gefüllt, um den Namen des Diagramm-Registers festzulegen.

With DiagNeu
.HasTitle = True
.ChartTitle.Characters.Text = "Störzeiten 2006  Gruppe 7621 " _
& "  " & wksEingabe.Cells(iZ, 1)
End With
DiagNeu.ChartTitle.Select
Selection.AutoScaleFont = False
With Selection.Font
.Name = "Arial"
.Size = 20 ' Schriftgröße für Diagrammtitel
End With
'Position Diagrammtitel
Selection.Left = 30
Selection.Top = 5
'Maschinenname in Textfeld schreiben
DiagNeu.Shapes.AddTextbox(msoTextOrientationHorizontal, 30, 30, 200, 30).Select
' Zahlen in vorheriger Zeile geben Position und Größe der Box an (Links, Oben, Breite, Höhe)
Selection.Characters.Text = "Maschine: " & Bereich
'Textausrichtung in Box
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
.Orientation = xlHorizontal
.AutoSize = False
End With
'Schriftformatierung Box
With Selection.Font
.Name = "Arial"
.Size = 20
.Bold = True
.ColorIndex = xlAutomatic
.Background = xlTransparent
End With
ActiveChart.PlotArea.Select

Alternativ kannst du natürlich auch die Bezeichnung einfach am Ende des Diagrammtitels anfügen:

.ChartTitle.Characters.Text = "Störzeiten 2006  Gruppe 7621 " _
& "  " & wksEingabe.Cells(iZ, 1) & "    " & Bereich

Die Zeile in der du die Fontgröße des Diagrammitels einstellen kannst findest du oben im Code.
Gruss
Franz
Anzeige
Letze Frage dazu
22.09.2006 10:30:33
Peter
Hallo Excelfreund
alle Änderungen habe ich jetzt eingebracht.
Ich habe 6 unterschiedliche Eingabemasken.
Sind sie gleich groß oder kleiner als die Originale Maske funktioniert alles Einwandfrei.
Eine dieser Dateien (Eingabemasken) ist aber größer (mehr Zeilen) und es funktioniert das erstellen der Diagramme nicht mehr.
Ich erhalte eine Fehlermeldung die so aussieht:
"Die Values Eigenschaft des Series Objekts kann nicht festgelegt werden"
"Laufzeitfehler 1004"
Kannst du hier mal nachschauen was nicht Ok ist.
https://www.herber.de/bbs/user/36920.xls
Anzeige
AW: Letze Frage dazu
22.09.2006 13:35:32
fcs
Hallo Peter,
aus unbekanntem Grund hatten im Muster-Diagramm die Datenbereiche den Fehler "#BEZUG!".
Möglicherweise hast du mal die ersten 4 Zeilen oder oder auch Spalten in der Tabelle "Eingabe" gelöscht. Dann tritt dieser Fehler im Musterdiagramm auf.
Ich hab das Musterdiagramm wieder in Ordnung gebracht und die Diagrammerstellung per Makro klappt wieder.
https://www.herber.de/bbs/user/36927.xls
Gruß
Franz
Genial
22.09.2006 15:34:26
Peter
hallo Excelfreund
vielen Dank für deine Hilfe.
Die Datei funktioniert einfach genial.
Die Macht möge mit dir sein. ;-)
Gruß Peter
Anzeige
Auswahl der Diagramme
23.09.2006 08:21:10
Peter
Hallo Excelfreund/e
ist es möglich folgendes zB als Macro zu erstellen.
Bei dem Aufrufen des Makros erscheint eine Box (Auswahlfeld) aus der ich wählen kann welche Diagramme erstellt werden sollen.
Die Ausawahl erolgt nach Maschinen (BSS, LSS, MRM, SSM, TBM, Geo-Mühle, 24-fache, RS-Marker, Brennerkette, Zwischenkette, Lampenkette 1, Lampenkette 2, Lampenkette 3)
Wähle ich zB BSS an, sollen nur die Diagramme für BSS erstellt werden usw.
Kann mir hier geholfen werden.
Es muß aber eine fertige Lösung sein, da ich keine Ahnung habe wie ich das anstelle.
Das Makro in "mein Spezialmenu" einbinden bekomme ich hin, da ich den Code dafür hier aus dem Forum (Josef Ehrensberger) erhalten habe.
Für Hilfe mit Anleitung währe ich sehr dankbar.
Gruß Peter Schilling (Dieter)
Anzeige
AW: Auswahl der Diagramme
23.09.2006 15:32:19
fcs
Hallo Dieter,
ich habe in der zuletzt von mir angepassten Dateiversion einmal zwei Varianten eingebaut und die Tabelle "Maschinen" ergänzt.
Variante 1 beginnt eine Diagramm-Ersellung venn du in Tabelle "Maschin"en eine Maschine per Maus auswählst. Den Startcode findest du im VBA-Editor unter der Tabelle "Maschine".
Variante 2 arbeitet mit einem Userform in dem eine Auswahlliste der Maschinen angezeigt wird, die aus der Tabelle "Maschinen" einglesen wird.
Den modifizierten Code für die Diagramm-Erstellung, den beide Varianten aufrufen findest du im Modul3.
Den Code zum Starten des Userforms habe ich im Modul 2 eingefügt. Diesen muss du dann in dein "Spezialmenu" einbinden.
Userform und Modul3 kannst du in deine anderen Dateien mit der Export/Import-Funktion des VBA-Editors kopieren.
https://www.herber.de/bbs/user/36950.zip (wegen Dateigröße als ZIP-Datei)
Ich habe im Modul1 auch noch einmal die letzten ca. 12 Zeilen des Codes angepasst, damit "EnableEvents = True" immer bei Beeindigung des Makros korrekt ausgeführt wird.
Gruss
Franz
Anzeige
Funktioniert
23.09.2006 17:42:42
Peter
Hallo Excelfreund
alles klappt wunderbar.
Danke für deine Hilfe.
Gruß Peter
AW: Diagramme erstellen
21.09.2006 01:41:30
Daniel
Hallo
bei 150 Werkzeugen würde ich ich nicht für jedes ein Diagramm erstellen.
Schau dir mal meine Beispiel-Datei an:
- ich habe eine Extra-Tabelle angelegt, aus der ich das Diagramm versorge.
- in diese Extra-Tabelle kopiere ich die Daten desjenigen Werkzeuges, daß ich mir anschauen will.
- dies mache ich durch geschickte Formeln, in dem ich einfach eine "1" vor das Werkzeug schreibe, dessen Grafik ich mir ansehen will, dh. die Daten des Werkzeugs,vor dem die 1 steht, werden in die Extra-Tabelle übernommen und ich kann mir durch verschieben der 1 nacheinander alle Werkzeuge anzeigen lassen.
(wenn du vergisst, die "1" vorher zu löschen, wird immer das erste Werkzeug angezeigt, vor dem die "1" steht).
Daruch erspare ich mir das erstellen von vielen Tabellen.
Problematisch wird es nur, wenn du alle auf einmal drucken willst, aber da könnte man ein kleines Makro schreiben.
https://www.herber.de/bbs/user/36879.xls
Gruß, Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige