Clever-Excel-Forum

Normale Version: Diagramm mit Text zu einer bestimmten Uhrzeit
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5 6 7 8
Hallo M...,

A) Fehler
Aus irgendeinem Grund passten die Bereiche für die Diagrammkurven und Beschriftungen nicht mehr zu den Grenzen der strukturierten Tabellen "Ereignisse" und "Positionen". Excel hat sich dadurch bei der Anzeige des Diagramms wohl verschluckt.
Ich musste die Beschriftungen löschen, die Bereiche für die Diagrammkurven anpassen und dann die Beschriftungen wieder einrichten.
Falls du es auch einmal machen muss, musst du daran denken unter "Ausrichtung" die Ränder der Beschriftungen auf 0 zu stellen.

B) Zuviele Datensätze in der Tabelle "Positionen"
Für die Tabelle "Ereignisse" mag es ja sinnvoll sein etliche Zeilen vorzuhalten, von denen immer nur einige genutzt werden. Aber nicht für die Tabelle "Positionen". Bei 42 eingerichteten Säulen (-1 bis 40) benötige ich nur 41 Datensätze in der Tabelle (Säule-1 bekommt keine Anzeigeposition).

C) Ein wenig andere Nutzung
Hier habe ich einige Änderungen (in Klammern der Stand) einmal exemplarisch eingebaut.

1. Säule00 (geändert)
Ich habe der Säule eine doppelte Höhe gegeben und eine weisse Farbe mit Transparenz 0 zugeordnet.
Dadurch werden die Beschriftungen der X-Achse nicht mehr in die Beschriftungen der Ereigniszeile geschrieben und nicht mehr durch die Gitternetzlinien unterbrochen.

2. Untergrenze der der Kurven (nicht geändert)
Hier könntest du auch 20 oder 30 eintragen, damit der Kurvenbereich kleiner und der Zeilenbereich grösser wird.

3. nutzen des Bis-Bereiches in der Tabelle Ereignisse (teilweise geändert)
Auch wenn ich zu einigen Ereignissen keine Linie zeichnen möchte, kann es meines Erachtens Sinn machen zwei Ereignisse eines Ereignisnamens in eine Zeile zu schreiben. Das macht die Tabelle kürzer und nach meiner Meinung auch übersichtlicher.
Ich hab das einmal umgesetzt für 2 (vorher 4) Zeilen unter "Ereignsse", 1 (vorher 2) Zeile unter "   " und 1 (vorher 2) Zeile unter "Medikamente".
Vielleicht gibt es noch mehr zusammenhängende Ereignisse ohne Pfeile.
ps. Die Bereiche "Total" im unteren Bereich der Tabelle "Ereignisse" würde ich  wie die Ereignisse "Ausfuhr" und "Infusionen" im Bis-Bereich beschriften.

4. benannte Zellen für  die Positionen "Verworfen" und "Total" (geändert)
Hier habe ich deine Berechnung in der benannten Zelle gemacht und in der Tabelle "Ereignisse" nur noch zugeordnet. Hiermit kann man die Positionierung leichter ändern.

5. Zuordnung der Kurve HF zu X1 (nicht geändert)
Wie schon geschrieben wird die Tabelle Kurven vom Makro nicht genutzt. Wenn die bisherigen vier Kurven fast immer zu den gleichen Zeiten eingetragen werden, solltest du die Spalte HF vor X2 schreiben und in den Diagrammreihen der Spalte X1 zuordnen.
Dann kannst du die Spalten Kurve05 und Kurve06 für Ereignisse zu anderen Zeiten (X2) nutzen.

6. Ermöglichen eine Beschriftungszeile zu übergehen (nicht geändert)
Bisher kann man, indem man in der Tabell "Positionen" den Ereignisnamen zu einer Position löscht, anschliessend dieser Zeile keine Farbe und keine Ereignsse (und damit auch keine Pfeile)zuordnen. Trotzdem werden die anderen Positionen im Diagramm nicht nach oben verschoben.
Wenn du in der Zelle AJ5 diese Formel einträgst
Code:
=MAX(WENN([@Ereignisname]="";"";WENN((MinWertY-[@Position]*HauptstricheY)>=0;MinWertY-AbstandY-[@Position]*HauptstricheY+HauptstricheY/2;MinWertY-AbstandY-[@Position]*HauptstricheY+HauptstricheY/2));AGGREGAT(15;6;$AJ$3:AJ4;1)-HauptstricheY)

und nach unten koopierst erfolgt in Zukunft eine verschiebung der unteren Zeilen wenn ein Name gelöscht wird.
Hallo Helmut,

vielen Dank nochmals für deine Arbeit. Ich habe jetzt noch ein Zeitmakro eingebunden (https://www.win-10-forum.de/threads/korr...gen.20895/), so dass man beim live-Ausfüllen eine senkrechte gestrichelte Linie an der aktuellen Zeit hat. Sieht lustig aus, man kann der Linie beim Wandern von links nach rechts zusehen:D

Gibt es eine Möglichkeit, die Säule 0 noch etwas schmaler zu machen? Ich habe schonmal versucht, AbstandY von 20 auf 15 zu setzen, dadurch verschiebt sich aber die Skalierung der X-Achse.

NACHTRAG:

Wenn man in der von dir geposteten Datei in S97 den Punkt "Oxytocin" auswählt, und dann für eine Zeit einen Wert eingibt, erscheint dieser nicht in der Tabelle, ist das bei dir auch so?
Hallo M...


A) zu
Zitat:Gibt es eine Möglichkeit, die Säule 0 noch etwas schmaler zu machen? ...dadurch verschiebt sich aber die Skalierung der X-Achse.
Ja.

Ich hoffe aber du meinst die Y- und nicht die X-Achse, ansonsten verstehe ich es nicht.

Wenn die Untergrenze der Kurven ("MinWertY") 0 ist, die Säule00 die Höhe 15 hat und alle anderen Säulen die Höhe 10 haben, hat die Summe der Säulenhöhen eine 5 am Ende und damit auch das Minimum der Y-Achse. Da Excel aber die Gitternetzlinien am Minimum orientiert, haben alle Beschriftungen der Y-Achse eine 5 am Ende.
Wenn man das Minimum der Y-Achse um 5 reduziert, passt zwar die Achsenbeschriftung, aber die Säulen (Zeilenbeschriftungen) liegen nicht mehr zwischen den Gitternetzlinien.

Mein Vorschlag: Setzte die Höhe der Säule ("AbstandY") auf 15 und die Untergrenze der Kurven ("MinWertY") auf 15 oder 25.
Eine Untergrenze der Kurve auf -5 ginge auch, du hast damit aber nichts gewonnen, da du nur einen Bereich der Säule00 durch einen nicht genutzten Kurvenbereich ersetzt.

B) zu

Zitat:Wenn man in der von dir geposteten Datei in S97 den Punkt "Oxytocin" auswählt, und dann für eine Zeit einen Wert eingibt, erscheint dieser nicht in der Tabelle, ist das bei dir auch so?
Ja, leider.

Ich habe die Beschriftungen gelöscht und wieder neu eingerichtet und dann hats geklappt.
Ich habe solch ein Verhalten in Excel auch schon früher gesehen, konnte es aber noch nicht genau eingrenzen. Ich vermute dass sich die Zuordnung der Beschriftungen verschluckt, wenn es zuviele leere Beschriftungen gibt. Daher habe ich in die nicht genutzten Zellen der Beschriftungen ein " " eingetragen. Falls sich aber eine fehlerhafte Zuordnung wiederholt, müste man im Makro immer wieder die Beschriftung entfernen und wieder neu zuordnen.
Wie lösche ich denn die Beschriftungen richtig und füge Sie dann wieder ein, ohne dass das Makro einen Laufzeitfehler ausgibt?
Hallo M...,


a) Beschriftung auswählen und entfernen
b) Datenreihe auswählen und "Datenbeschriftung hinzufügen"
c) Beschriftungen auswählen (jetzt Y-Werte) und unter "Datenbeschriftung formatieren:
1. "Wert aus Zellen" anwählen und den "Datenbeschriftungsbereich auswählen" (nur die Zellen der Tabellenspalte),
2. "Y.Wert" und "Führungslinien anzeigen" abwählen und
3. unter "Ausrichtung" alle vier Räder (mindesten rechter und linker Rand) auf 0 setzen.
d) Makro ausführen
Hallo M...,

wenn du folgende Zeilen in das Makro (im oberen Teil hinter den drei Set und vor den Kommentarzeilen mit "Grenzen festlegen") einfügst, werden die Beschriftungen bei jedem Aufruf des Makros zu Beginn neu zugewiesen.
Code:
'---------------------------------------------------------
' Ereignisbeschriftung links und rechts neu zuordnen
'---------------------------------------------------------
With Dia.FullSeriesCollection("EreignisseLinks")
    AktName = "=" & Me.Name & "!" & rngTextVon.Address
    .DataLabels.Delete
    .ApplyDataLabels
    .DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, AktName, 0
    .DataLabels.ShowRange = True
    .DataLabels.ShowValue = False
    .HasLeaderLines = False
    .DataLabels.Format.TextFrame2.MarginRight = 0
    .DataLabels.Format.TextFrame2.MarginLeft = 0
End With
With Dia.FullSeriesCollection("EreignisseRechts")
    AktName = "=" & Me.Name & "!" & rngTextBis.Address
    .DataLabels.Delete
    .ApplyDataLabels
    .DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, AktName, 0
    .DataLabels.ShowRange = True
    .DataLabels.ShowValue = False
    .HasLeaderLines = False
    .DataLabels.Format.TextFrame2.MarginRight = 0
    .DataLabels.Format.TextFrame2.MarginLeft = 0
End With
Irgendwas scheine ich falsch zu machen, hier meine Schritte:

1. Beschriftungen innerhalb der Säulen (zb "Total") anwählen und Löschen
2. Auf eine beliebige Säule klicken und Datenbeschriftungen hinzufügen
3. Rechtsklick auf eine der Beschriftungen der Säulen (z. B. Ereignisse)
1. "Wert aus Zellen" anwählen und den "Datenbeschriftungsbereich auswählen" (nur die Zellen der Tabellenspalte),
2. "Y.Wert" und "Führungslinien anzeigen" abwählen und
3. unter "Ausrichtung" alle vier Räder (mindesten rechter und linker Rand) auf 0 setzen.
d) Makro ausführen


Im Anschluss bekomme ich einen Aufruf zum Debuggen (s. Screenshot), diesen Fehler hatte ich die Tage schon öfter, dieser lässt sich nur beseitigen, indem alle "M" aus der Ereignistabelle entfernt werden.

Kommando zurück, die Beschriftungen funktionieren wieder, nur was hat es mit dem Laufzeitfehler auf sich?
Leider fängt Excel jetzt bei mir komplett an zu spinnen, nach jedem Öffnen der Datei, sind die Datenbeschriftungen der Ereignisse Links und Rechts verschoben (die Seitenränder stehen nicht mehr auf 0), wenn ich diese manuell ändere und abspeichere, ist nach dem Öffnen das selbe Problem erneut vorhanden.
Hallo M...,



A) zu #57
a) Ich hatten nicht geschrieben "beliebige Säule". Für die Beschriftung must du schon die richtige Datenreihe auswählen.
b) Der Fehler tritt auf, wenn ich eine Beschriftung positionieren will, aber keine Beschriftung eingerichtet ist.

Wenn du das Makro mit dem code aus #56 (oder besser mit dem unten aufgeführten code) erweitert hast, ist eine manuelle neue Einrichtung nicht mehr notwendig.

B) zu #58
a) Was bedeutet "die Seitenränder stehen nicht mehr auf 0" und "manuell ändere" ?
b) Mir ist aufgefallen, das der rechte und linke Abstand der Beschriftungen nach einem erneuten Öffnen nicht mehr auf 0 stehen.
Das war auch schon in älteren Versionen dieser Datei so.
Excel scheint eine Änderung des Abstandes nicht abzuspeichern, wenn ich sie für alle Beschriftungen einer Datenreihe mache.
Du solltest anstelle des codes aus #56 den folgenden code einfügen in dem ich die Abstände für alle Datenpunkte einzeln auf 0 setze.
Code:
'---------------------------------------------------------
' Ereignisbeschriftung links und rechts neu zuordnen
'---------------------------------------------------------
Dim Punkt As Point
With Dia.FullSeriesCollection("EreignisseLinks")
    AktName = "=" & Me.Name & "!" & rngTextVon.Address
    .DataLabels.Delete
    .ApplyDataLabels
    .DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, AktName, 0
    .DataLabels.ShowRange = True
    .DataLabels.ShowValue = False
    .HasLeaderLines = False
    For Each Punkt In .Points
        If Len(Punkt.DataLabel.Caption) > 0 Then
            Punkt.DataLabel.Format.TextFrame2.MarginRight = 0
            Punkt.DataLabel.Format.TextFrame2.MarginLeft = 0
        End If
    Next Punkt
End With
With Dia.FullSeriesCollection("EreignisseRechts")
    AktName = "=" & Me.Name & "!" & rngTextBis.Address
    .DataLabels.Delete
    .ApplyDataLabels
    .DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, AktName, 0
    .DataLabels.ShowRange = True
    .DataLabels.ShowValue = False
    .HasLeaderLines = False
    For Each Punkt In .Points
        If Len(Punkt.DataLabel.Caption) > 0 Then
            Punkt.DataLabel.Format.TextFrame2.MarginRight = 0
            Punkt.DataLabel.Format.TextFrame2.MarginLeft = 0
        End If
    Next Punkt
End With
With Dia.FullSeriesCollection("EreignisNamen")
    For Each Punkt In .Points
        If Len(Punkt.DataLabel.Caption) > 0 Then
            Punkt.DataLabel.Format.TextFrame2.MarginRight = 0
            Punkt.DataLabel.Format.TextFrame2.MarginLeft = 0
        End If
    Next Punkt
End With
Hallo Helmut,

ich habe jetzt mal das Makro ausgetauscht gegen deinen letzten Vorschlag, und jetzt funktioniert es, auch nach dem Schließen und wieder Speichern sind die Grenzen noch bei 0.

B) nachdem die Beschriftungen verschoben waren, hab ich die Reihe Ereignissbeschriftungen Links angeklickt und habe dann gesehen, dass die Seitenränder nicht auf 0 cm, sondern auf 0,11 cm stand. Ich habe diese dann auf 0 korrigiert.
Seiten: 1 2 3 4 5 6 7 8