Microsoft Excel

Herbers Excel/VBA-Archiv

Spalte als Variable im Säulendiagramm

Betrifft: Spalte als Variable im Säulendiagramm von: Nemyk
Geschrieben am: 18.09.2014 21:50:36

Hallo Alle,

ich beschäftige mich seit erst 2 Wochen mit Excel VBA. Mein erster Makro soll ein Säulendiagramm mit drei Säulen zeichnen.

So sollte der Makro funktionieren

Beispiel:
- Zeile Nr. 2 wird eingelesen, dabei die Zahlen in der Spalten Nr. 2, Spalte Nr. 5, Spalte Nr. 8, ... etc
- Zeile Nr. 2 wird eingelesen, dabei die Zahlen in der Spalten Nr. 3, Spalte Nr. 6, Spalte Nr. 9, ... etc
- Zeile Nr. 2 wird eingelesen, dabei die Zahlen in der Spalten Nr. 4, Spalte Nr. 7, Spalte Nr. 10, ... etc

- Zeile Nr. 3 wird eingelesen, dabei die Zahlen in der Spalten Nr. 2, Spalte Nr. 5, Spalte Nr. 8, ... etc
- Zeile Nr. 3 wird eingelesen, dabei die Zahlen in der Spalten Nr. 3, Spalte Nr. 6, Spalte Nr. 9, ... etc
- Zeile Nr. 3 wird eingelesen, dabei die Zahlen in der Spalten Nr. 4, Spalte Nr. 7, Spalte Nr. 10, ... etc

- Zeile Nr. 4 wird eingelesen, dabei die Zahlen in der Spalten Nr. 2, Spalte Nr. 5, Spalte Nr. 8, ... etc
- Zeile Nr. 4 wird eingelesen, dabei die Zahlen in der Spalten Nr. 3, Spalte Nr. 6, Spalte Nr. 9, ... etc
- Zeile Nr. 4 wird eingelesen, dabei die Zahlen in der Spalten Nr. 4, Spalte Nr. 7, Spalte Nr. 10, ... etc

....etc

Für das Einlesen einer Zeile, z. B. die Zeile Nr. 2 sollte ich ein Säulendiagramm mit drei Säulen. Also für das oben stehende Beispiel (bis Zeile Nr. 3) nur 3 Säulendiagramme mit jeweils 3 Säulen.

Für jede Hilfe bin ich sehr Dankbar !

  

Betrifft: AW: Spalte als Variable im Säulendiagramm von: Rudi Maintaire
Geschrieben am: 18.09.2014 22:00:42

Hallo,
Mein erster Makro
da gibts aber einfacheres zum Üben ;-)
Diagramme per VBA erstellen ist ziemlich komplex.

Gruß
Rudi


  

Betrifft: AW: Spalte als Variable im Säulendiagramm von: Adis
Geschrieben am: 19.09.2014 07:02:17

Hallo

Makrorecorder nehmen und aufzeichnen. Ist am Anfang verwirrend,
mit der Zeit sieht man aber wie die Makrostruktur aufgebaut ist.

Ein Problem könnte sein, das die Zahlen nicht nebeneinander stehen.
Normalerweise erwartet ein Diagramm die Zahlenkolonne nebeneinader,
egal ob Spalte oder Zeile. Mit Lücken könnte das schwierig werden.

Wer programmieren lernen will muss viel üben, Misserfolge einstecken.
Am meisten lernt man aus seinen Fehlern. Es lohnt sich anzufangen.

Gruss Adis


  

Betrifft: AW: Spalte als Variable im Säulendiagramm von: Nemyk
Geschrieben am: 19.09.2014 20:34:26

Halle an Alle,

der folgende Code habe mir bisher gebastelt.

Kann mir jemandem helfen ?

Sub neueTabelle()
   Dim lngZeile As Long
   'Dim k As String
   'Dim m As String
   'Dim n As String
   For lngZeile = 5 To 10
      With ActiveSheet.Shapes.AddChart.Chart
         .ChartType = xlColumnClustered
         .SetSourceData Source:=Range("A5")
         With .SeriesCollection(1)
         For k = 0 To 4
         If k Mod 2 <> 0 Then
         k = k + 1
         Else
         k = k
         End If
            .Values = Range(Cells(IngZeile, 3 * k + 3), Cells(IngZeile, 3 * k + 6))
            .XValues = Range(Cells(4, 3 * k + 3), Cells(4, 3 * k + 6))
         Next k
         End With
         With .SeriesCollection.NewSeries
         For n = 0 To 4
         If n Mod 2 <> 0 Then
         n = n + 1
         Else
         n = n
         End If
            .Values = Range(Cells(IngZeile, 3 * n + 3), Cells(IngZeile, 3 * n + 6))
            .XValues = Range(Cells(4, 3 * n + 3), Cells(4, 3 * n + 6))
         Next n
         End With
         With .SeriesCollection.NewSeries
            For m = 0 To 4
         If m Mod 2 <> 0 Then
         m = m + 1
         Else
         m = m
         End If
            .Values = Range(Cells(IngZeile, 3 * m + 4), Cells(IngZeile, 3 * m + 7))
            .XValues = Range(Cells(4, 3 * m + 4), Cells(4, 3 * m + 7))
         Next m
         End With
      End With
    Next lngZeile
End Sub



 

Beiträge aus den Excel-Beispielen zum Thema "Spalte als Variable im Säulendiagramm"