Das Archiv des Excel-Forums
Datenreihe splitten, na wie gehts denn?
Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Betrifft: Datenreihe splitten, na wie gehts denn?
von: Michael Noisternig
Geschrieben am: 13.10.2003 13:49:24
Liebe Ng,
ich möchte eine Datenreihe in einem Diagramm in mehrere Datenreihen
aufspalten, sodass ich diese einzelnen Kurven verschiedenfärbig darstellen
kann. Es ist ein umfangreiches Projekt, daher favorisiere ich einen Lösung
mit VBA.
Status quo:
(nur so als Denkansatz, ich komme auch nicht mehr weiter...)
Sub SplitCurve()
'Versuch eine Datenreihe zu splitten, Rückgabe als Zelladressen (Range)
Dim Data()
Dim n, x As Byte
Dim LR As String
Dim Adresse()
'On Error GoTo Fehler
LR = Sheets(3).Cells(550, 12).End(xlUp).Row
n = InputBox("Please type a number which is the splitting factor.")
ReDim Data(n)
ReDim Adresse(n) As Variant
Range(Cells(50, 12), Cells(LR, 12)).Interior.ColorIndex = 6
Sheets(3).Select
For x = 1 To n
Data(x) = Application.InputBox("Please mark the first point of the " &
Chr(13) & Chr(13) & x & ". curve.")
MsgBox ActiveCell.Address
Next
Range(Cells(50, 12), Cells(LR, 12)).Interior.ColorIndex = 0
Exit Sub
Fehler:
MsgBox "Error"
Range(Cells(50, 12), Cells(LR, 12)).Interior.ColorIndex = 0
End Sub
Vielleicht kann mir da jemand auf die Sprünge helfen.
--
Excel 2000, Win98SE
Gruß, Michael
Betrifft: Ein Ansatz
von: Reinhard
Geschrieben am: 14.10.2003 04:18:32
Hi Michael,
probier das Nachfolgende.
Gruß
Reinhard
Sub Michael()
Dim lae As Long
Dim Bereich1 As String
Dim Bereich2 As String
Dim Bereich3 As String
Dim n As Long
For n = 1 To 30 'daten erzeugen
Worksheets("Tabelle1").Cells(n, 1) = Int(Rnd * 501)
Next n
lae = InputBox("Länge") 'bei 30 Datensätzen machen Eingaben von 3,5,6,10 Sinn
If Str(lae) = "" Then Exit Sub
Anzahl = Int(30 / lae)
For n = 1 To Anzahl
Bereich1 = "A" & (n - 1) * lae + 1 & ":A" & n * lae
Bereich2 = Chr(n + 64) & 1
Sheets("Tabelle1").Range(Bereich1).Copy _
Destination:=Sheets("Tabelle2").Range(Bereich2)
Next n
Bereich3 = "A1:" & Chr(Anzahl + 64) & lae
Charts.Add
With ActiveChart
.ChartType = xlLineMarkers
.SetSourceData Source:=Sheets("Tabelle2").Range(Bereich3) _
, PlotBy:=xlColumns
.Location Where:=xlLocationAsObject, Name:="Tabelle1"
End With
End Sub
Excel-Beispiele zum Thema " Datenreihe splitten, na wie gehts denn?"