Office: (Office 2010) VBA

Helfe beim Thema VBA in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo ! Wenn ich ein Diagramm (in meinem Fall ein Blasendiagramm) habe und dort bei den einzelnen Blasen die jeweiligen Werte der Blase in Form eines... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Kossy, 18. April 2011.

  1. VBA


    Hallo !

    Wenn ich ein Diagramm (in meinem Fall ein Blasendiagramm) habe und dort bei den einzelnen Blasen die jeweiligen Werte der Blase in Form eines zusätzlichen Beschriftungsfeldes anzeigen lassen möchte, so habe ich ja die Wahl, ob ich mir die X-Achsen-Werte, Y-Achsen-Werte, Datenreihennamen und Blasenwert anzeigen lassen möchte.

    Wie genau kann ich nun in VBA die Werte dieser einzelnen manipulieren bzw. individuell abändern?

    Danke schön für die Unterstützung !

    :)
     
  2. Beverly
    Beverly Erfahrener User
    Hi Kossy,
    Code:
    Beschriftung der Datenreihe1 wird aus Spalte E ab Zeile 1 zugewiesen.


    VBA [​IMG]
     
    Beverly, 19. April 2011
    #2
  3. Hallo !

    Danke Beverly für die schnelle Hilfe !!

    mfg
    Kossy
     
  4. VBA

    Hallo !

    Ich habe nochmal eine Frage an euch. Im Anhang findet ihr meine Excel Tabelle, die die Datenquelle für meine Diagrammerzeugung bzw. die Quelle für die einzelnen Datenreihen des Diagramms ist.

    Ich habe jetzt den folgenden VBA Code, um die Datenreihen möglichst dynamsich aus dieser Tabelle zu erzeugen:

    Code:
    Ich würde jetzt gerne den Endpunkt der Schleife dynamisch festlegen. Mit bisher...

    Code:
    ...habe ich das Ende eher statisch geschrieben (also der Zahl 6 als Endpunkt), da ich ja auch die Excel Tabelle genau kenne. Es könnte jetzt aber in Zukunft passieren, dass sich die Zeilenanzahl mit relevanten Daten (und evtl. auch die Spaltenanzahl, wobei das aber nicht der Fall sein wird) vergrößern, oder sogar verringern könnte, was in dem Diagramm ja brücksichtigt werden sollte. Es könnte also auch noch Daten in der Zelle A7 auftauchen, die bisher nicht für das Diagramm berücksichtigt wurde...

    Wie genau kann ich jetzt sicherstellen, dass das in meinem VBA Code berücksichtigt wird?

    Also das erstmal dynmaisch ausgelesen wird, bis zu welcher Zelle (oder Zeile) Daten in meiner Tabelle vorhanden sind und das dann in die Schleife eingebaut wird (und das die Zahl 6 als statischer Endpunkt wegfallen kann).

    Danke schön für die Hilfestellungen !!

    mfg
    Kossy
     
  5. Beverly
    Beverly Erfahrener User
    Hi Cossy,

    mit IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows.Count) ermitttelst du die letzte belegte Zelle in Spalte A - schreibe deine Codezeile also so:
    Code:
    VBA [​IMG]
     
    Beverly, 20. April 2011
    #5
  6. Hallo Beverly,

    hab vielen Dank !

    Gruß
    Kossy
     
  7. Hallo Beverly,

    ich möchte nochmal ein bereits etwas älteres Thema aufgreifen.

    Hier ging es darum, dass in die Inhalte meiner einzelnen Beschriftungsboxen der Datenreihen individuell anpassen möchte. Damit meine ich also diese Beschriftungsboxen / Labelsbosen, die direkt neben der Blase im Diagramm auftauchen (siehe erstes Bild im Anhang).

    Bisher habe ich diese Text inhalte immer automatisch von Excel erstellen lassen.

    Ich würde das jetzt gerne durch VBA Codierung so gestalten lassen, wie es in dem zweiten Bild im Anhang aussieht (hier habe ich das mittels WENN Funktionen und ein paar Zeichenformatierungen direkt in Excel innerhalb der Funktionszeile gemacht). Dieses Ergebnis würde ich auch gerne direkt in VBA erstellen wollen, so dass die direkt Bearbeitung innerhalb des Excel Arbeitsblattes überflüssig wird.

    Im dritten Bild im Anhang ist nochmal meine Ausgangstabelle für das Diagramm zu sehen.

    Also ich möchte gerne erreichen, dass mir in dem Beschriftungsfeld einer datenreihe (oder einer Blase) folgendes angezeigt wird:

    Fallgruppe: Endokrinologie
    Fallzahl: 25 Fälle


    Den Wert vor dem Doppelpunkt würde ich hartcodiert vorgeben und den Wert nach dem Doppelwert würde ich dynamisch auslesen wollen (wobei das Wort Fälle auch wieder hartcodiert wäre)

    Hier ist mein bisheriger VBA Code dafür:

    Code:
    Kannst Du mir vielleicht bei diesem Problem weiterhelfen?

    Viele Grüße
    Kossy
     
  8. Beverly
    Beverly Erfahrener User

    VBA

    Hi Kossy,

    schreibe die Zusammenstellung jeweils in eine Zelle und weise dem Beschritungslabel diese Zelle zu - nach diesem Prinzip:
    Code:
    VBA [​IMG]
     
    Beverly, 21. April 2011
    #8
  9. Hallo Berverly,

    danke schön den das Stück VBA Code, ich werde das gleichmal ein wenig austesten...

    Nochmal etwas anderes:

    Weißt Du vielleicht, wie ich es bewerkstelligen könnte, dass ich mir meine Diagrammlegende zu der jeweiligen Datenreihen einen von mir individuellen Wert anzeigt und nicht automatisch die Werte von Excel dort übernimmt (dazu habe ich nochmal ein Bild in den Anhang dieses Posts gestellt, genau so soll es nämlich nicht mehr aussehen).

    Ich möchte stattdessen dort lieber etwas kürzeres stehenhaben (entweder wieder aus einer Tabelle in Excel ausgelesen oder von mir selbst erstellter und in VBA hartcodierter Text).

    Danke schön für die Unterstützung !

    Viele Grüße
    Kossy
     
  10. Beverly
    Beverly Erfahrener User
    Hi Kossy,

    in der Legende wird immer der Reihenname angezeigt - du musst also einen Zellbereich im Tabellenblatt als Reihenname zuweisen, der deine Anzeigewerte enthält. Natürlich kannst du den Namensinhalt auch direkt ohne Bezug auf das Tabellenblatt zuweisen.


    VBA [​IMG]
     
    Beverly, 21. April 2011
    #10
  11. Hallo Beverly !

    Ich glaube wir reden hier ein wenig aneinander vorbei, was aber auch nicht schlimm ist.

    Ich habe mir eben mal den folgenden Code zusammengestellt:

    Code:
    Hier werden dynamisch Textinhalte aufgebaut, aus von mir fest vorgegebenen Textteilen, sowie dynamisch aus einer Exceltabelle ausgelese Werte.

    Und genau diese einzelnen Werte möchte ich jetzt einem jeweiligen Datenlabel einer meiner Blasen in dem Diagramm zuordnen.

    Code:
    Bitte lies Dir einmal meinen Kommentar im VBA Code an der Stelle durch, wo ich ihn gesetzt habe.

    Also was ich eigentlich möchte, ist folgendes:

    Code:
    Falls irgendetwas an meiner Frage unklar sein sollte, so schreib mir doch noch einfach einmal ok?

    Viele Grüße
    Kossy
     
  12. Beverly
    Beverly Erfahrener User
    Hi Kossy,

    du sprachst in deinem 1. Beitrag von einer "Diagrammlegende" und dein angehängtes Bild impliziert genau diese Vorstellung. Wie ich schon schrieb: in der Legende wird immer der Datenreihenname angezeigt. Wenn du also die dortige Anzeige ändern willst, musst du den Namen der Datenreihe entsprechend zuweisen (gleichgültig ob mit Zellbezug oder direkt).

    Mit deinem Code dagegen sheonst du etwas etwas völlig anderes erreichen zu wollen - und zwar die Beschriftung eines Datenpunktes (oder mehrerer).
    An dieser Stelle im Code ist das völlig falsch, denn dort wird sich auf die Datenreihenbeschriftung als solche bezogen, nicht auf die Beschrfitung eines einzelnen bzw. eines bestimmten Datenpunktes. Wenn es nur ein einziger Datenpunkt ist, reicht diese Anweisung (außerhalb der With-Anweisung)
    Code:
    Andernfalls musst du in einer Schleife über alle Datenpunkte jeder (neu erstelltn) Datenreihe laufen und dem Beschriftungslabel jedes einzelnen Datenpunktes etwas zuweisen.


    VBA [​IMG]
     
    Beverly, 26. April 2011
    #12
  13. VBA

    Hallo Beverly,

    danke schön ! Ich habe es jetzt hinbekommen mit dem folgenden VBA Code an der besagten Stelle:

    Code:
    Nun stellt sich für mich die Frage, ob es in VBA für Excel noch eine andere Möglichkeit für einen Zeilenumbruch gibt, es das mit vbCrLf zu bewerkstelligen. Excel macht mir dadurch nämlich einen Riesenzeilenumbruch in das Datenlabel und stellt quasi 2 zeilenumbrüche dar, obwohl nur einer gewünscht ist.

    Gibt es da noch eine elegantere Lösungsmöglichkeit?

    Viele Grüße
    Kossy
     
  14. Beverly
    Beverly Erfahrener User
    Hi Kossy,

    eine Alternative zu vbCrLf ist vbLf - ich bin mir aber nicht sicher ob das hilft. Das Hauptproblem bei Beschriftungslabel ist, dass sie sich nicht so komfortabel wie z.B. Textfelder formatieren lassen und Excel macht da eben vieles "auf gut Dünken".


    VBA [​IMG]
     
    Beverly, 26. April 2011
    #14
  15. Hi Beverly,

    ok danke schön !

    //Edit

    Ich hatte noch herausgefunden, das man mit der Funktion Chr(10) einen sauberen Umbruch hinbekommt...

    Gruß
    Kossy
     
Thema:

VBA

Die Seite wird geladen...
  1. VBA - Similar Threads - VBA

  2. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  3. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  4. Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch

    in Microsoft Excel Hilfe
    Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch: Hallo zusammen, erstmal danke für all die Tipps und Kniffe, die ich ohne eigenen Thread gefunden und gelernt habe. Leider finde ich mein Thema nirgendwo... Aktuell habe ich zwei Spalten mit...
  5. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  6. Bilder über VBA Größe und DPI ändern für Webshop

    in Microsoft Excel Hilfe
    Bilder über VBA Größe und DPI ändern für Webshop: Hallo Excel Spezialisten, Ich habe mir eine recht aufwendige Tabelle gebastelt, aus der ich Daten für meinen Webshop generiere und in einer .csv bereitstelle. Es werden neue Preislisten...
  7. VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen

    in Microsoft Word Hilfe
    VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen: Hallo zusammen, ich habe eine Word-Vorlage mit Platzhaltern, in die ich mit VBA Daten aus einer Excel-Datei einfüge (in eine Excel-Zeile schreibe ich alle Daten für ein neues Word-Dokument). So...
  8. Erstellung eines Dynamischen Kalenders (ggf. VBA)

    in Microsoft Word Hilfe
    Erstellung eines Dynamischen Kalenders (ggf. VBA): Guten Morgen an Alle, ich hoffe, es geht euch soweit gut :) Ich wende mich heute an euch, weil ich gerade vollkommen verzweifle und irgendwie so ganz und garnicht weiterkomme und irgendwie...
  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