Office: (Office 2013) x-y Diagramm mit mehreren Datenreihen

Helfe beim Thema x-y Diagramm mit mehreren Datenreihen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi! Ich hänge gerade hier an der Erstellung einer Datenbank fest und komme leider nicht weiter... Folgendes Szenario: es gibt 2 Tabellen, einmal... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von kuhnikuehnast, 17. Januar 2014.

  1. x-y Diagramm mit mehreren Datenreihen


    Hi!
    Ich hänge gerade hier an der Erstellung einer Datenbank fest und komme leider nicht weiter...

    Folgendes Szenario:
    es gibt 2 Tabellen, einmal tbl_Patienten und einmal tbl_CRP. Verknüpft über den Schlüssel FALL-ID

    Ich habe es schon geschafft, die CRP- Werte (Blutwerte) eines einzelnen Patienten mir mittels Diagramm grafisch darstellen zu lassen. Nun würde ich gern in das Diagramm noch folgendes einbauen:
    - Aufnahmedatum, Entlassdatum
    - Antibiosendauer

    http://www.ms-office-forum.net/forum...1&d=1390145941

    Das Ganze wollte ich über einen Trick realisieren:
    - um eine "Vertikale" Gerade zu zeichnen würde ich einfach z.B. das Aufnahmedatum (24.12.2009) erweitern auf 24.12.2009 12:00:00. Dieser Wert sollte auf der Y-Achse 2/3 des max. CRP- Wertes haben. Dann würde ich der Datenreihe noch einen weiteren Wert hinzufügen, berechnet aus der Aufnahme: (24.12.2009 12:00:00 - 00.00.0000 00:00:01) Diesem Wert würde ich den Y- Wert 0 geben. Schon hat man das Aufnahmedatum grafisch eingefügt.
    Äquivalent dann mit Entlassdatum und Antibiose (hier Y-Wert = 0,5*max. CRP)

    Leider hänge ich an der grafischen Darstellung in Access.
    Access erlaubt es irgendwie nur die Daten aus einer Tabelle zu verwenden. Ich habe mir schon überlegt, ob ich einfach bei Antibiosebeginn einen neuen Datensatz in der CRP- Tabelle anlege, die CRP- Werte frei lasse und eine weitere Spalte für Antibiose anfüge. Allerdings unterbricht er bei freigelassenen CRP- Werten immer die CRP- Linie.

    Ich würde mich freuen, wenn ihr mir helfen könntet!

    Im Anhang habe ich die Datenbank, eine Exceltabelle, die das Diagramm veranschaulicht und ein Bild des Diagramms.

    Liebe Grüße

    Kuhni

    :)
     
    kuhnikuehnast, 17. Januar 2014
    #1
  2. Hallo Kuhni,
    willkommen im Forum.
    Du bist mit deinen Ideen auf einem guten Weg (Aufnahme und Entlassung).
    Die Kunst bei Diagrammen in Access ist, die relevanten Daten in einer
    Abfrage entsprechend zusammenzustellen.

    Leider kann/will/darf ich keine rar-Dateien öffnen.
    Wenn du deine DB im mdb-Format (Acc2003) einstellst, schau ich mir das gerne an.
    Alternativ würde auch ein Bild des Beziehungsfensters mit den Tabellenfeldern und
    Beziehungen reichen.

    Wahrscheinlich musst du die Daten aufbereiten und schließlich per UNION-Abfrage(n)
    zusammensetzen.
     
    Marsu65, 19. Januar 2014
    #2
  3. Hallo Marsu! Danke für Deine Hilfe bisher. Das stimmt, vermutlich muss man das in so einer Abfrage verwirklichen. Aber ich hänge ja noch viel grundlegender fest :-)
    Ich habe mal eine Excel Tabelle angehängt, wie ich mir vorstelle, das die UNION-Abfrage dann aussehen könnte.
    Problem ist ja, das dadurch Datumswerte entstehen, die mit keinem CRP- Wert belegt sind. Ergo: Die CRP- Kurve wird dann an dieser Stelle unterbrochen, da das Diagramm diese Reihe nicht als eigene Reihe interpretiert.
    Man müsste irgendwie die Möglichkeit haben, für jeden X- Wert einen passenden Y- Wert einzugeben und das Ergebnis dann im Diagramm darstellen können... Aber irgendwie bekomme ich das mit Access nicht hin?

    Im nächsten Schritt wäre dann die Frage, wie ich mir so eine Abfrage bastle :-) Aber auf jeden Fall schonmal vielen vielen Dank für die Hilfe bis hier! Ich komme gerade echt nicht weiter und find es total super, wenn mir geholfen wird!

    lg Kuhni
     
    kuhnikuehnast, 19. Januar 2014
    #3
  4. x-y Diagramm mit mehreren Datenreihen

    Die Unterbrechung kannst du verhindern:
    - Diagrammentwurf
    - Diagramm Menüleiste/Extras/Optionen ...
    - Reiter Diagramm
    - Leere Zellen werden gezeichnet als auf INTERPOLIERT einstellen.

    Ich habe mal aus ein paar eigenen Spieldaten ein Dia erstellt:
     
    Marsu65, 19. Januar 2014
    #4
  5. Marsu65, Du bist spitzenklasse! :-)

    DATETIME kann er ja nur max. nach Minuten gruppieren, weshalb die Hilfswerte wohl nicht eine Sekunde, sondern eine Minute unterschied haben müssen... (Der Wert 12:00:00 und 12:00:01 wird sonst als ein Wert zusammengefasst)

    Dann geht es jetzt an die Abfragen :-) Da steht ich aber noch relativ am Anfang! Ich muss irgendwie in letzter Zeit feststellen, dass ich mich in Sachen Access doch immer auf rel. bescheidenem Niveau bewegt habe *sos

    Ich habe in der tbl_Patienten den Primärschlüssel auf FallID gesetzt und eine 1:n Verknüpfung zu tbl_CRP FALLID

    Folgende Probleme mit denen ich gerade kämpfe (auf dem Weg zur UNION- Abfrage :-) :

    - Ich gebe den Antibiosebeginn ja im Format tt.mm.jjjj in das Textfeld ein.
    Dadurch ist die Uhrzeit ja auf hh:nn:ss = 00:00:00 gesetzt. Wie bastle ich daraus standardmäßig dann 12:00:00?
    (Wie er dann nachher in der passenden Abfrage die Zeit um 00.00.0000 00:01:00 vordreht kommt in der nächsten Frage ;-) )

    - Wie schaffe ich es, aus den CRP-Werten die ja über FALLID verknüpft sind den max. CRP-Wert für diese FALLID zur Berechnung der Antibiose und Aufnahme/Entlass- Y-Koordinaten rauszufinden? (respektive, wie schaffe ich es dann den max. CRP- Wert sowie dessen Erhebungsdatum (dann in Stunden nach Antibiosebeginn (oh Gott, kommt da noch viel auf mich zu!!! Hilfee! :-) ) im Zeitraum der antibiotischen Behandlung rauszufinden, was auch noch eine weitere Aufgabe ist die auf mich zukommt :-) )

    Da Access 2013 irgendwie mit den mdb Datenbanken etwas murrt habe ich die Beispieldatenbanken nochmal als .xls Format angehängt.

    Bei Bedarf kann ich auch einen Screenshot hochladen.

    Vielen Vielen Dank nochmal, jetzt bin ich echt schon ein mini-Schritt weiter :-)

    lg Kuhni
     
    kuhnikuehnast, 19. Januar 2014
    #5
  6. Der Diagrammassistent ist da ein wenig störrisch. Er will immer gruppieren und aggregieren.
    Tipp: stör dich nicht an dem Assistenten. Erstelle irgendein Diagramm und passe die Datenherkunft
    später im Formularentwurf an. Hier funktioniert das auch ohne Gruppierung und Aggregation der Daten.
    Warum willst du das tun?
    BTW: ansonsten addiere 0,5 zum Datum oder benutze die DateAdd-Funktion.
    Die Werte kann man mit VBA-Funktionen, Domänenaggregatfunktionen (DMax) oder einfachen Abfragen ermitteln.

    Ich seh mir gleich mal deine Bsp.-Daten an.

    Edit: BITTE KEINE LEER-/SONDERZEICHEN in den Feldnamen verwenden!
     
    Marsu65, 20. Januar 2014
    #6
  7. Irgendwie scheint das leider nicht zu funktionieren? Oder stell ich mich nur doof an? :-) Man muss immer den Assistenten nutzen, kann dann irgendwie nachträglich auch nichts mehr ändern :-(

    Zu 12:00:00 hat mehrere Gründe.
    - reine Datumeingabe ist einfacher (Uhrzeit kann im Arztbrief eh nicht eruiert werden)
    - 12:00:00 da aus dem Antibiosebeginn später noch Folgewerte berechnet werden. (CRP nach 24+-6h; CRP nach 36+-6h, ...) Und da ist 12 Uhr mittags am praktischsten, da die Blutentnahmen so im Zeitraum 6-18 Uhr liegen :-)

    12:00:01 wird genommen um nicht nur einen einfachen Punkt zu erhalten, sondern um 2 Koordinaten zu bekommen, die dann als "Vertikale" interpretiert werden :-)

    an dieser VBA- Funktion hänge ich irgendwie noch... am Besten Wäre ja etwas nach dem Motto:

    Code:
    Nochmal vielen Dank für Deine Hilfe bisher! Bin gerade echt am Verzweifeln... argh!

    lg Kuhni
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    kuhnikuehnast, 20. Januar 2014
    #7
  8. x-y Diagramm mit mehreren Datenreihen

    Du kannst nachträglich in den Eigenschaften des Diagrammsteuerelements die Datenherkunft nach Belieben ändern.

    Ok. In dem Fall würde ich eher bei der Eingabe des Datums die Uhrzeit (High
    Noon) direkt als Tabellenwert setzen, damit sie später nicht immer berechnet werden muss.

    Die Geschichte mit 12:00:01 habe ich nicht verstanden.
    ... jetzt dämmert es mir was du vorhast:
    Du kannst zu einer Datumsangabe auch 2 Punkte haben, die dann
    tatächlich eine Vertikale im Graphen bilden (siehe meine BspTabelle in #4).
    Die Trickserei braucht es nicht.

    Wie ich das sehe, brauchst du ca.9 (Unter-)Abfragen, die dann in einer UNION-Abfrage zusammengefasst werden.
    Bsp. für den Aufnahme-2/3Max Datensatz:
    Code:
     
    Marsu65, 20. Januar 2014
    #8
  9. Da ist dann die Frage, wie ich das am Besten anstelle? Gibt es eine Möglichkeit, nur das Datum (tt.mm.jjjj) in ein Textfeld zu schreiben und das ergänzt dann die Zeit auf 12:00:00 ? Das ist ja quasi auch nur für die Berechnung und würde sonst die Bediener ziemlich verwirren, weil sie ewig nach Uhrzeiten suchen :-) (bzw. ist es bei ein paar tausend einzugebenden Datensätzen auch ne Menge Zeit ;-) )

    ich hab das mal zusammengefasst, weil es sich ja um fast das gleiche handelt. Ich habe mal ein Screenshot meines Probediagramms angehängt. Testweise habe ich die tbl_CRP noch um die Spalte Antibiose erweitert.

    Was müsste dann da drin stehen, damit es so funktioniert wie von Dir gezeigt? (sprich keine Trickserei mit Zeitverzug und auch keine Gruppierung?)

    Ich merke echt immer mehr, das ich von Access noch viel zu wenig verstanden habe! :-(

    Wie binde ich den von Dir geschriebenen Code denn ein? Das muss ja eine Abfrage sein, die automatisch bei Eingabe der Antibiose startet, also z.B. als Ereignis nach Aktualisierung der Antibiose, oder?

    Ich bin echt noch etwas ratlos, hoffe aber weiter auf Deine Hilfe, auch wenn ich mich evtl. dumm anstelle... :-( Auf jeden Fall vielen Dank schonmal bis hierhin!

    lg Kuhni
     
    kuhnikuehnast, 20. Januar 2014
    #9
  10. Hallo!

    Eine Möglichkeit wäre, für Anzeige und Eingabe ein ungebundenes Formularfeld zu nutzen, wobei nach dessen Update der um 12 Stunden korrigierte Wert in die Tabelle geschrieben wird.
    Aber das Problemchen würde ich erst mal verschieben.

    Zum Thema 12:00:01
    Wenn du zwei Datensätze mit Datum und Wert hast
    01.01.2014 y1
    01.01.2014 y2
    ergzeugt das im Liniendiagramm eine vertikale Linie im Wertebereich y1 bis y2.
    D.h. eine Datumskorrektur um eine Sekunde ist hier überflüssig.

    Das ist kein VBA-Code und kann in der Form nicht in einem Formularereignis verwendet werden.
    Es ist die SQL-Anweisung einer Abfrage, d.h. das was du siehst, wenn du im Abfrageassistenten in die SQL-Ansicht wechselst.
    Die Abfrage ist ein Teil für die Datenherkunft des Diagramms.

    Generell brauchst du neun Abfragen jeweils mit den Feldern
    Datum - AufnahmeWert - EntlassungWert - AntibioseWert - CRPWert
    2 für Aufnahme:
    01.01.2014 - 0 - NULL - Null - Null
    01.01.2014 - 2/3MaxCRP - NULL - Null - Null
    2 für Entlassung:
    31.01.2014 - NULL -0 - NULL - Null
    31.01.2014 - NULL - 2/3MaxCRP - NULL - Null
    dito jeweils 2 für Antibiosestart/-ende
    und eine Abfrage für die CRPs
    Diese neun Abfragen werden in einer UNION-Abfrage zusammengefasst und
    bilden die Datenherkunft für das Diagramm.
    Das sieht dann so aus wie deine ErgebnisAbfrage-Tabelle aus deiner Excel-Datei.

    Bitte beherzige den Ratschlag zur Benennung von Tabellenfeldern, solange du noch am Anfang der Entwicklung bist!

    Ich habe dir eine PN (Persönliche Nachricht) geschickt, die du in deinem Posteingang findest.
     
    Marsu65, 20. Januar 2014
    #10
  11. So,
    ich bin ein wenig weiter gekommen mit meinem Diagramm :-)
    Code:
    funktioniert schon einmal! Jetzt haben sich noch folgende Fragen ergeben:

    Wie kann ich den max CRP- in der Abfrage ermitteln um daraus dann die benötigten Werte berechnen (gerade testweise auf 50 gesetzt)?

    Die nächste Frage bezieht sich auf das "Antibioseproblem":
    Code:
    Hier wird das Datum ja nur im Format tt.mm.jjjj übergeben. Wie kann ich direkt zu dem abgefragten Datum 12h dazu- addieren und es im Format tt.mm.jjjj hh:nn:ss ausgeben?

    Auch habe ich trotz der Abfrage 0 - 75 - 75 - 0, das Problem, das mir manchmal nicht der gewünschte Verlauf (wie in den Beispielbildern) bei Antibiose angezeigt wird sondern ein "N". Sprich, er nimmt die Werte 0 - 75 - 0 - 75 statt 0 - 75 - 75 - 0.

    Langsam merke ich, wie ich dazu lerne :-) Danke an dieses tolle Forum!

    lg Kuhni

    edit:

    Für die 12h- Addition / Datumskonvertierung (von tt.mm.jjjj auf tt.mm.jjjj hh:nn:ss bei Antibiosebeginn) habe ich jetzt folgendes versucht:

    Code:
    Allerdings bekomme ich dann den Fehler, das der Ausdruck entweder falch eingegeben, oder zu komplex sei... :-(

    lg Kuhni
     
    kuhnikuehnast, 10. Februar 2014
    #11
  12. Von unten aufgerollt:
    Allerdings bekomme ich dann den Fehler, das der Ausdruck entweder falch eingegeben, oder zu komplex sei... :-(

    Ein Select erfordert die Angabe einer Tabelle.
    Ansonsten Reihenfolge ändern:
    innen DateAdd und dann die Format-Anweisung drumherum.

    Es wird an einer 'falschen' Reihenfolge der Daten liegen.
    Evtl. muss eine korrekte Sortierung (OrderBy) hinzugefügt werden.

    Mögliche Wege:
    - vorgeschaltete Abfrage
    - Domänenaggregatfunktion
    - Öffentl. Funktion in einem normalen Modul
     
  13. x-y Diagramm mit mehreren Datenreihen

    Ich hab es jetzt so versucht:
    Code:
    Das liefert mir aber das Ergebnis:

    tt39193,mm.jjjj hh:nn:ss

    Wenn ich das Format in der Tabelle ändere (von tt.mm.jjjj auf tt.mm.jjjj hh:nn:ss) und dann die Konvertierung weglasse geht es. Allerdings stehe ich dann vor dem Problem, das ein Anwender aus versehen später eine Uhrzeit eingeben kann und dadurch die Eingabe verfälscht wird.
    Lässt sich das irgendwie anders dann beheben? Es soll ja eigentlich nur das Datum des Antibiosebeginns/ -endes gespeichert werden. Aber für die Betrachtung soll 12:00:00 angenommen werden.

    Weiteres Problem: Wenn kein Datum eingegeben ist liefert er ja trotzdem Werte für Antibiose (also Y- Koordinaten). Wie kann man das noch hinbekommen, das diese nur bei Eingabe der Antibiose verwendet werden?

    Das stellt mich aber vor eine Herausforderung:
    Ich habe ja (als Beispiel) folgende Koordinaten:
    14.10.2007 12:00:00 - 0
    14.10.2007 12:00:00 - 50
    22.10.2007 12:00:00 - 0
    22.10.2007 12:00:00 - 50

    wie schaffe ich es in einem Order By Befehl, das er das 1. Datum aufsteigend, das 2. Datum absteigend sortiert? Es handelt sich hier ja um die gleiche Spalte...





    nach langem Rumlesen habe ich jetzt folgendes rausgefunden:

    1. man erstellt ein neues Modul:

    Code:
    2. man setzt myVar = max. CRP
    Code:
    3. mit der Funktion Get_CRPMAX_absolute:

    Code:
    4. über die Abfrage:
    Code:
    um dann
    5. auf MyVar() zugreifen zu können:
    Code:
    ich habe mich hier an abgeändertem Code bedient, den Marsu65 bereits in einem anderen Beitrag geschrieben hat! Danke dafür!!! :-) Das funktioniert super!!!



    Wäre für Hilfe sehr dankbar!

    lg Kuhni
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    kuhnikuehnast, 10. Februar 2014
    #13
  14. weiteres Problem, das mir gerade noch auffällt:
    Wenn ich nur sehr wenige Werte insgesamt habe, streckt er mir die Aufnahme- und Entlassdaten auf 2 x- Koordinaten- Werte (also 2x z.B. 14.07.2007) und die "senkrechte" ist dann eine "schräge".

    Kann man das irgendwie beheben?

    lg Kuhni
     
    kuhnikuehnast, 10. Februar 2014
    #14
  15. Hallo,
    Jet-SQL spricht englisch "dd.mm.yyyy hh:nn:ss"

    Die Reihenfolge der Diagramm-Union-Abfrage kannst du doch z.B. über die Zusammensetzung der Union bestimmen.
    Beispiel:
    Code:
    Wenn du einige Nebenbedingungen prüfen musst, die den Diagramm-Abfragestring derart beeinflussen, ist es evtl. von Vorteil diesen in einer VBA-Prozedur zusammenzusetzen.
    Hier kannst du Union-Teile weglassen oder nach belieben zusammenfügen.

    1. bis 5. hab ich mir nicht näher angesehen, denn es scheint ja wie gewünscht zu funktionieren.

    Bist du sicher, dass das nicht daher kommt, dass du einmal den 14.07.2007 und einmal den 14.07.2007 12 UHR verwendest?


    PS:
    Global ist veraltet. Bitte durch Public ersetzen.
     
Thema:

x-y Diagramm mit mehreren Datenreihen

Die Seite wird geladen...
  1. x-y Diagramm mit mehreren Datenreihen - Similar Threads - Diagramm mehreren Datenreihen

  2. Mehrere Tabellen in einer Pivot Grafik

    in Microsoft Excel Hilfe
    Mehrere Tabellen in einer Pivot Grafik: Hallo, ich habe eine Excel Datei erstellt. Es geht in der Excel Tabelle darum das Lieferdatum mit dem vom System vorgegebenen Datum zu vergleichen und das dann in einer Grafik darzustellen. Soweit...
  3. Diagramme mit mehreren Kategorien darstellen

    in Microsoft Excel Hilfe
    Diagramme mit mehreren Kategorien darstellen: Hallo, ich hab schon alles versucht und brauche jetzt Hilfe. Es geht um dieses Diagramm [ATTACH] Die Datenfelder sind "abgerechnet" und "nicht abgerechnet". Die Kategorien sind die drei Spalten...
  4. Einfügen eines Visio-Diagramms in PowerPoint: keine Bearbeitung mehr möglich

    in Microsoft PowerPoint Hilfe
    Einfügen eines Visio-Diagramms in PowerPoint: keine Bearbeitung mehr möglich: Hallo Community, ich möchte eine Visio-Zeichnung in PowerPoint einfügen - per Inhalte einfügen --> Visio Objekt. Danach kann ich auf die Zeichnung Doppelklicken und es öffnet sich ein...
  5. Einfügen eines Visio-Diagramms in Word: keine Bearbeitung mehr möglich

    in Microsoft Word Hilfe
    Einfügen eines Visio-Diagramms in Word: keine Bearbeitung mehr möglich: Hallo Community, ich möchte eine Visio-Zeichnung in Word einfügen. Ich habe es auf zwei Wegen gemacht: einfach per Copy & Paste oder per Inhalte einfügen --> Visio Objekt. Danach kann ich auf die...
  6. Rubrikenachse mit mehreren Ebenen formatieren

    in Microsoft Excel Hilfe
    Rubrikenachse mit mehreren Ebenen formatieren: Guten Tag In der angehängten Tabelle habe ich ein Balkendiagramm. Dieses hat in der Rubrikenachse mehrere Ebenen. Ich hätte gerne die Beschriftung aller drei Ebenen waagrecht. Hier im Forum habe...
  7. Datenreihen im Diagramm hintereinander (aus mehreren Tabellenblättern)?

    in Microsoft Excel Hilfe
    Datenreihen im Diagramm hintereinander (aus mehreren Tabellenblättern)?: Hallo, bin gerade etwas am verzweifeln. Ich versuche in einem Diagramm die Datenreihen fortlaufend anzuordnen und komme nicht weiter. Ich möchte das z.B. in Tabellenblatt1 Die Zellen C2 bis C15...
  8. xy-Diagramm mit mehreren Datenreihen

    in Microsoft Access Hilfe
    xy-Diagramm mit mehreren Datenreihen: Hallo zusammen, probiere und lese seit Tagen, bekomme es aber nicht hin: Zur Aufgabe: Ich habe in einer Tabelle Messwerte. Ein Datensatz enthält jeweils den Messwert, die zugehörige Temperatur...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden