Office: (Office 2013) Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur)

Helfe beim Thema Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur) in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich bin am verzweifeln. Der dynamische aufbau der Graphen funktioniert nicht so wie ich mir das gedacht habe. Folgende Tabelle soll in einem... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von bowie1304, 10. Mai 2016.

  1. bowie1304 Neuer User

    Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur)


    Hallo,

    ich bin am verzweifeln. Der dynamische aufbau der Graphen funktioniert nicht so wie ich mir das gedacht habe.
    Folgende Tabelle soll in einem Graphen dargestellt werden
    'P-date' ;200501;200502;200503;....;201603;201604
    '05 Prior';0,00% ;0,001%;0,004%;....;0,006%;0,004%
    '200501' ; ;0,001%;0,007%;....;0,004%;0,003%
    '200502' ; ; ;0,000%;....;0,000%;0,001%
    '200503' ; ; ; ; ; ;
    .
    .
    '201603' ; ; ; ; ;0,000%;0,003%
    '201604' ; ; ; ; ; ;0,001%

    hierzu noch etwas was sich ändern kann in den Tabellen, ist, das der Wert in Spalte z.B. 201604 und Reihe 201604 leer sein kann, weil es keine werte gibt.

    Dannn fliegt das Makro unten auf die Nase.


    ' Diagramm creation
    StartRow = 2
    -- Diagramm fängt erst mit den Werten der 2.ten Reihe an
    ' SDR PrepayRate Static
    Set wksData = Worksheets(orgname)
    -- Arbeitsblatt defienieren

    '
    ' Freeze Panes, first row, first column
    '
    Cells.EntireColumn.AutoFit
    Sheets(orgname).Select
    ActiveWindow.FreezePanes = False
    ActiveWindow.ScrollRow = 1
    ActiveWindow.ScrollColumn = 1
    ActiveWindow.SplitRow = 1
    ActiveWindow.SplitColumn = 1
    ActiveWindow.FreezePanes = True

    With wksData
    nRowsCnt = .Cells(.Rows.Count, 1).End(xlUp).Row
    -- feststellen der maximalen Anzahl der darzustellenden Reihen
    nColsCnt = .Cells(1, .Columns.Count).End(xlToLeft).Column
    -- feststellen der maximalen Anzahl der darzustellenden Spalten
    Set Bereich = .Range(.Cells(StartRow, 2), .Cells(nRowsCnt, nColsCnt))
    -- Datenbereich zur Darstellung definieren
    Bereich.Activate
    -- nur Temporär
    End With

    Worksheets(graphsheet).Activate
    -- aktivieren des Graphiksheets auf dem die Diagramme dargestellt werden
    Worksheets(graphsheet).ChartObjects(graphname).Activate
    -- aktivieren des Chartobjectes mit dem Namen graphname
    With ActiveChart
    .ChartType = xlLineMarkers
    .SetSourceData Source:=Bereich
    .PlotBy = xlRows
    .HasLegend = True
    .HasTitle = True
    .ChartTitle.Text = graphname & " Static"
    .ChartArea.Select
    .Axes(xlCategory).Select
    .Axes(xlCategory).TickLabelSpacing = 3
    -- bis hier ist alle gut denke ich
    -- ab hier fangen die Probleme an Beschreibung siehe unten
    1) .SeriesCollection(1).XValues = wksData.Range(wksData.Cells(2, 1), wksData.Cells(nRowsCnt, 1))
    For RowCount = 2 To nRowsCnt
    .SeriesCollection(RowCount - 1).Name = wksData.Cells(RowCount, 1).Value
    Next RowCount
    .Legend.Select
    Selection.Width = 179
    End With

    Set Bereich = Nothing

    Probleme:
    zu 1) wksData.Range(wksData.Cells(2, 1), wksData.Cells(nRowsCnt, 1))
    liefert in den Values2 ein Array mit 137 Werten von 05 Prior bis 201604 das ist auch korrekt
    die Zuweisung
    .SeriesCollection(1).XValues = ...
    liefert jedoch nur ein Array von 135 Werten von 05 Prior bis 201602 das ist nicht korrekt
    Warum?

    Dadurch kommt es dann inder nächsten For schelife natürlich zu einem Laufzeitfehler 1004 = ungultiger Parameter
    denn das Array ist ja nur 135 groß und nicht 137.

    Das ganze ist dynamisch und mit jedem Lauf unterschiedlich.

    Wo ist mein gedanklicher Fehler?

    Wäre für Hilfe echt super dankbar

    Gruß
    Willi
     
    Zuletzt bearbeitet: 10. Mai 2016
    bowie1304, 10. Mai 2016
    #1
  2. Beverly
    Beverly Erfahrener User
    Beverly, 13. Mai 2016
    #2
  3. bowie1304 Neuer User
    Hallo Karin,

    ich hatte auch hier nach einer Lösung gefragt, bekam aber lange kene Antwort, So bin ich dann auf die genannte Seite und habe es dort noch mal gestellt.

    Danke Dir.
    Willi
     
    bowie1304, 13. Mai 2016
    #3
  4. Beverly
    Beverly Erfahrener User

    Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur)

    Hi Willi,

    das ist auch kein Problem, wenn man längere Zeit keine Antwort bekommt, die Frage dann wo anders zu stellen. Es ist halt nur günstig, wenn man nach Erhalt einer Lösung entweder die Lösung oder einen Link zur Lösung postet - auf diese Weise können auch andere User davon profitieren. :)

    Bis später,
    Karin
     
    Beverly, 13. Mai 2016
    #4
Thema:

Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur)

Die Seite wird geladen...
  1. Excel vba und dynamische generierung von Diagrammen (Verzweiflung pur) - Similar Threads - Excel vba dynamische

  2. 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...
  3. Excel Range als Bild in Word einfügen

    in Microsoft Excel Hilfe
    Excel Range als Bild in Word einfügen: Hallo, ich möchte gerne per Makro in einem Wordtemplate Mustergrafiken, die als Platzhalter dienen durch Bereiche in meiner Exceldatei ersetzen, die ich als Bild einfüge. Per Hand mache ich das...
  4. Dynamische Tabellen mit automatischer Aktualisierung

    in Microsoft Excel Hilfe
    Dynamische Tabellen mit automatischer Aktualisierung: Hallo in die Runde! Vorab schon mal vielen Dank für alle Mühen und die Hilfe! Ich habe folgendes Anliegen: Ich habe eine Geräteliste als Excel Datei mit einigen verschiedenen Tabellenblättern...
  5. (Excel) Dynamische Tabelle, VBA, fehlende Formatierung?

    in Microsoft Excel Hilfe
    (Excel) Dynamische Tabelle, VBA, fehlende Formatierung?: Liebe Experten, Gefilterte Daten sollen in ein Listobject übertragen werden. Für das Listobject habe ich ein Template angelegt, dass alle Formatierungen (u.a. bedingte Formatierung etc.) enthält....
  6. Tabellenblätter aus Vorlagen-Tabellenblatt generieren mit dynamischen Anpassungen durch Vorgaben

    in Microsoft Excel Hilfe
    Tabellenblätter aus Vorlagen-Tabellenblatt generieren mit dynamischen Anpassungen durch Vorgaben: Hallo, ich suche gerade eine Möglichkeit mittels VBA mehrere Tabellenblätter auf einmal zu generieren (ca. 40), die auf einem Vorlage-Tabellenblatt (TB2) basieren. Das kopieren/ Vervielfachen an...
  7. Dynamische Excel-Tabelle nach Word übertragen mit VBA

    in Microsoft Excel Hilfe
    Dynamische Excel-Tabelle nach Word übertragen mit VBA: Hallo Zusammen, ich bin neu hier und habe folgende Problemstellung: Ich bekomme quartalsweise eine (dynamische) EXCEL-datei mit folgendem Aufbau: Überschriften: Name Vorname PersNr spalte4...
  8. dynamisches Diagramm - VBA Frage - Excel 2003

    in Microsoft Excel Hilfe
    dynamisches Diagramm - VBA Frage - Excel 2003: Guten Morgen miteinander, habe mal wieder ein Problem mit einer VBA Programmierung. Bisher: Ich habe Geschäftsjahr mit den einzelnen Monate von Okt bis Sept. Diese Monate sind Gruppiert in den...
Schlagworte:
  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