Boxplots mit Excel erstellen

Als kleine Programmieraufgabe im Fach Statistik sollten wir das Erstellen eines Boxplots in Excel umsetzen.

Ich habe das Ganze (mit den eingeschränkten Möglichkeiten von VBA) objektorientiert gelöst. Das fertige Add-in kann man recht einfach über Extras – Add-ins installieren. Es fügt Excel ein kleines neues Menü „Statistik“ hinzu, das genau eine Funktion beinhaltet:

Boxplots mit Excel: Das Statistik-Menü

Diese öffnet ein simples Formular, in das man die benötigten Werte einträgt (es wird nur das erste Feld, der Wertebereich, benötigt):

Boxplots mit Excel: Das Eingabeformular

Nach einem Klick auf Berechnung wird dann ein Boxplot wie der folgende erstellt:

Boxplots mit Excel: Das Klassendiagramm

Wer sich für die technische Umsetzung interessiert, der kann sich hier mein (nicht gerade sehr umfangreiches und auch nicht vollständiges) Klassendiagramm anschauen. Die Lösung ist sicher noch zu verbessern, aber Hauptsache ist, dass sie unabhängig von einer konkreten Arbeitsmappe einsetzbar ist (als Add-in) und funktioniert 😉

Boxplots mit Excel: Das Klassendiagramm

Download

Herunterladen kann man sich meine Lösung auch gerne:

Installation

Unter Excel 2003 sollte sich das AddIn selbst installieren, wenn man die XLA-Datei öffnet und man die Ausführung von Makros erlaubt.

Unter Excel 2007 kann man das AddIn wie folgt installieren:


  1. Boxplots mit Excel 2007 - Schritt 1

  2. Boxplots mit Excel 2007 - Schritt 2

  3. Boxplots mit Excel 2007 - Schritt 3

  4. Boxplots mit Excel 2007 - Schritt 4

  5. Boxplots mit Excel 2007 - Schritt 5

  6. Boxplots mit Excel 2007 - Schritt 6

  7. Boxplots mit Excel 2007 - Schritt 7

Über uns Stefan

Polyglot Clean Code Developer

81 Kommentare

  1. hey stefan!
    ich schreib gerade diplom-arbeit und bin auch waaaahnsinnig froh, dein programm gefunden zu haben!
    ich habe allerdings das gleiche problem wie phillip! ich habe alles so installiert wie es angegeben ist und ich kann auch den wertebereich angeben, aber dann erhalt ich auch die fehlermeldung: „Fehler beim Kompilieren-Projekt oder Bibliothek nicht gefunden“ von MVB! Wenn ich dann auf ok drücke, werde ich an den Code vom BoxplotForum deiner .xla-Datei weitergeleitet mit dem Hinweis auf die Zeile
    Private Sub BtnOK_Click()
    bin nur n „doofes blondie“ und hab kein plan, was ich jetzt machen soll! =)wär supi, wenn du mir bzw. uns helfen könntest!

  2. Also ich weiß leider nicht weiter. Kann mir vielleicht jemand einen Screenshot mit der genauen Fehlermeldung per Mail schicken?

  3. Hallo zusammen. Mögliche Lösung laut Stefan:

    Die Ursache dürfte ein falscher Verweis sein. Gehe im VBA-Editor auf Extras/Verweise, dort wirst du einen Eintrag mit NICHT VORHANDEN: finden. Den musst du deaktivieren. Nach speichern, schliessen und wieder öffnen der Datei sollte keine Meldung mehr kommen.

  4. danke! aber jetzt hab ich auch schon das nächste problem!!! das Feld Verweise ist bei mir leider nicht unterlegt, so dass ich da gar nicht rein komme…. ich werd wahnsinnig!

  5. Hallo Jini. Schau mal hier: Winboard. Klick mal auf den „Stop“-Button und versuch es nochmal.

  6. Hallo Stefan!
    Viiiiiiiieeeeeeelen Dank für deine Hilfe! es funktioniert! bin total glücklich! Danke, danke, danke! =)

  7. Hallo Stefan,
    der Boxplot funktioniert an sich ganz gut, nur mein Problem ist die korrekte Ausgabe.
    Bei den Zäunen zeigt er mir nur den + Wert richtig an und den negativen zeigt er mit 0 an obwohl er nicht null ist.
    Meine Wertetabelle wär so:
    xmin = 0
    xu0,25 = 0
    xmed= 0
    xo0,75= 48
    xmax = 148

    Wenn ich diese Zahlenabfolge nehme kommt für den Zaun Zu null raus. Es sollte aber -72 erscheinen =(
    Ist die Zahlenabfolge falsch oder wo könnte der Fehler liegen?
    Danke schon mal im Voraus.
    Gruß Sven

  8. Hallo Sven. Sorry, ich verstehe deine Wertetabelle nicht so ganz. Wie kommst du auf -72?

  9. Hallo Stefan.
    Bei den Zäunen hab ich für DQ 48. Für den Zaun XU= 0-1,5*48= – 72

  10. Hi Sven. Magst du mir mal deine ganzen Werte schicken? Sorry, ist länger her und ich kann das nicht mehr nachvollziehen. Der Interquartilsabstand ist also 48?

  11. Hallo Herr Macke,
    habe ihr Add-in zur Erstellung eines Boxplots in Excel 2007 eingefügt. Leider funktioniert der Programmzusatz bei mir nicht. Ich erhalte die Fehlermeldung „Objektvariable oder With-Blockvariable nicht festgelegt“.
    Was habe ich falsch gemacht? Können Sie mir helfen?
    Gruß
    Jürgen Beck

  12. Hallo Jürgen. Hast du einen gültigen Zellbereich für die Berechnung ausgewählt?

  13. Hallo zusammen!

    Kann mich der Mehrheit anschließen, Programm funktioniert, erspart Arbeit, super.
    Aber verrat mir doch bitte einer wie ich eine Sklaierung ins Diagramm bekomme. Kann es sein dass ich mich seltendähmlich anstelle?-P

    Gruß Flo

  14. Hallo FLoW. Du solltest das Diagramm in Excel einfach mit der Maus skalieren können.

  15. Hallo Hr. Macke,
    Nach dem Start des Add Inns kommt die Fehlermeldung ‚Objektvariable oder With-Blockvariable nicht festgelegt‘, im Debugger ist die Zeile ‚ks.Zeichnen‘ gelb markiert. Was kann ich da machen?
    Grüße,
    Markus

  16. Hallo Markus, siehe oben.

  17. Hallo Stefan,
    wenn es darum geht, ob ich einen gültigen Zellenbereich ausgewählt habe, würde ich sagen: Ja. Kann man da viel falsch machen???

  18. Hallo,
    wie schön hier so eine tolle Sache gefunden zu haben! Sitze gerade an meiner Bachelorarbeit, aber das mit den Boxplots will nicht hinhauen…
    Ich habe Excel 2010 und konnte alles installieren. Bis zu dem Feld „Berechnen“ funktioniert alles, dann sieht man noch kurz ein riesiges Säulendiagramm und dann stürzt Excel ab. Keine Chance mehr und ich muss Schließen des Programms über den Taskmanager erzwingen. Eine Ahnung woran das liegen könnte?
    Danke im Voraus

  19. Hallo Consn. Leider nein, aber versuch doch mal, das Makro Schritt für Schritt abzuarbeiten: ALT-F11 um den VBA-Editor zu starten und dann mit F8 das Makro durchlaufen. Dann solltest du sehen, an welcher Stelle es „abstürzt“.

  20. wi bekommt man die dateii zum durchsuchen

  21. Guten Tag Stefan

    Super Add-In! Wie kann ich die Achsen beschriften (lassen)?

    Schöne Grüsse
    Liliana

  22. Hallo Liliana, das geht leider nicht automatisch, aber du kannst nach Fertigstellung des Boxplots z.B. einfach manuell eine Textbox einfügen.

  23. Hallo Stefan,

    das Add in funktioniert, aber warum werden mir keine Werte (Zahlen) auf der horizontalen Skala angezeigt???

    LG Marcel

  24. Einfach nur:

    Danke! Super Tool. Auf Anhieb perfekt.

  25. Hallo,
    habe das Add in installiert und auch schon einige Boxplots erstellen können, habe mich gefreut aber anscheinend zu früh….Excel macht jetzt nur noch die Grätsche beim Versuch einen weiteren Boxplot zu erstellen. Gleicher Aufbau, nix anders bei den Daten als zuvor.
    Hat jemand eine Idee?
    Danke vorab
    Chris

  26. Hey,

    erstmal: Super Tool. Danke dafür
    Aber ich hab folgendes Problem: Das Programm erstellt zwar einen Boxplot, jedoch ohne Achsenbeschriftung, sprich man sieht einen Boxplot, aber weiß nicht wie die Werte sind.
    Wäre super, wenn du mir einen Tip geben kannst, wie ich das ändere.

    Danke und liebe Grüße,
    Yaiza Hofmann

  27. Hallo Stefan,

    Habe seit ein paar Tagen nach einer Lösung für Boxplot gesucht, aber nichts vernünftiges gefunden.

    > Vielen herzlichen Dank, dass Du deine Lösung hier einfach so zur Verfügung stellst!!
    > und absoluter Wahnsinn, dass Du das dann auch noch seit Jahren (!!) supportest.
    > Danke, Du hast mir viel Zeit geschenkt.

    –> Ich wünsch Dir alles erdenklich Gute

    btw: funzt prima auf Excel 2010.

  28. Christoph Schmitz

    Hallo Herr Macke,

    danke für das tolle Plugin. Ich würde es als Mathelehrer gerne in der Schule einsetzen. Leider beschriftet Excel bei mir die Achse nicht. Das ist mit Sicherheit nur ein Einstellungsfehler. Wie bekomme ich es hin, dass Excel die Achse beschriftet?

    Liebe Grüße
    Christoph Schmitz

  29. Hallo Herr Schmitz,

    leider habe ich seit Jahren nicht mehr in das Makro reingeschaut. Ich kann Ihnen leider nicht helfen :-/

    Viele Grüße!
    Stefan Macke

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax