Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Makro für Plot der variable Anzahl von Datenserien hat
zurück: Zusammenfügen zweier VBA's weiter: Bilder per VBA finden (Worksheets) und kopieren Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
almdudler
Im Profil kannst Du frei den Rang ändern


Verfasst am:
12. Feb 2009, 17:51
Rufname:

Makro für Plot der variable Anzahl von Datenserien hat - Makro für Plot der variable Anzahl von Datenserien hat

Nach oben
       Version: Office 2003

Hallo liebe Forengemeinde,

nachdem man mir hier bei meinem letzten Problem schon gut geholfen hat, hoffe ich nun wieder auf ein wenig Unterstützung von Euch.
Ich habe folgendes Probelm:
Ich habe ein Makro, das mir Messdaten (Y-Werte) in die Spalten B, C, D etc. meines Sheets("escan0 bis escanMAX") ab Zeile 7 schreibt. In der Spalte A stehen die X-Werte, die für alle Messdaten dieselben sind.
Nun hätte ich gerne ein Makro, das mir alle diese Messdaten in einen Plot zeichnet. Das sollte eigentlich kein Problem sein. Jedoch ist die Spaltenanzahl immer variabel, sprich die Messdaten gehen mal bis Spalte N dann bis L etc. Man müsste also über eine Schleife den Plot erzeugen, aber das ist mir bisher nicht erfolgreich gelungen. Als Anregung hier einer meiner Programmierversuche mit ein paar Kommentaren:
Code:

Sub Test()

Const iMax = 10  'Anzahl Deiner Dateien. Kann man hier eigentlich eine Abfrage einprogrammieren?

Dim i As Integer

For i = 1 To iMax

    Charts.Add
    ActiveChart.ChartType = xlXYScatter
    ActiveChart.SetSourceData Source:=Sheets("escan0 bis escanMAX").Range("S15")
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(CStr(i)).XValues = "='escan0 bis escanMAX'!R7C1:R518C1"  ‘ hier und in den folgenden 2 Zeilen meckert der Computer leider (Runtime Error, liegt wohl an dem i bzw CStr(i). Zudem müsste die Spaltenzahl variabel programmiert werden....
    ActiveChart.SeriesCollection(i).Values = "='escan0 bis escanMAX'!R7C2:R518C2"
    ActiveChart.SeriesCollection(i).Name = "=""escan+Cstr(i)"""
   
    ActiveChart.Location Where:=xlLocationAsObject, Name:="escan0 bis escanMAX"
       
    With ActiveChart
        .HasTitle = False
        .Axes(xlCategory, xlPrimary).HasTitle = True
        .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Kanal"
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Counts"
    End With
    ActiveChart.HasLegend = False

  Next i
 
    End Sub

Für eine Anregung, Korrektur oder allgemein ein besseres Programm, wäre ich sehr dankbar!
almdudler
Im Profil kannst Du frei den Rang ändern


Verfasst am:
13. Feb 2009, 12:10
Rufname:


AW: Makro für Plot der variable Anzahl von Datenserien hat - AW: Makro für Plot der variable Anzahl von Datenserien hat

Nach oben
       Version: Office 2003

Hallo liebe Forengemeinde,

mittlerweile habe ich mit ein paar Anregungen aus andern Hilfestellungen mein Probelm lösen können.

Das Programm habe ich umformoliert wie folgt:
Code:
Sub Test()

Sheetname = ActiveSheet.Name  ' damit sparst Du Dir Probleme beim Einlesen der Daten, schliesslich ist Sheetname variabel

'Const iMax = 13 'Anzahl Deiner Dateien
'Dim i As Integer

    Charts.Add
    ActiveChart.ChartType = xlXYScatter
    ActiveChart.SetSourceData Source:=Sheets("escan0 bis escan" + CStr(iMax - 1)).Range("S15")
   
    For i = 1 To iMax
   
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(i).XValues = "='" + Sheetname + "'!R7C1:R518C1"
    ActiveChart.SeriesCollection(i).Values = "='" + Sheetname + "'!R7C[" & i & "]:R518C[" & i & "]  "
    ActiveChart.SeriesCollection(i).Name = "escan" & i - 1
   
    ActiveChart.Location Where:=xlLocationAsObject, Name:="escan0 bis escan" + CStr(iMax - 1)
     
      Next i
     
    With ActiveChart
        .HasTitle = False
        .Axes(xlCategory, xlPrimary).HasTitle = True
        .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Kanal"
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Counts"
    End With
    ActiveChart.HasLegend = True

    End Sub

Ich denke, dass sich diese Vorlage für ähnliche Probleme relativ leicht anpassen lässt. Für weitere Verbesserungsvorschläge bin ich nach wie vor dankbar!
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: makro beim öffnen starten und werte auswählen 0 werner100 636 24. Nov 2005, 13:30
werner100 makro beim öffnen starten und werte auswählen
Keine neuen Beiträge Excel Formeln: SummeWenn und Anzahl 5 Gast12345 828 03. Nov 2005, 13:21
Gast12345 SummeWenn und Anzahl
Keine neuen Beiträge Excel Formeln: Aus Datenfeld Anzahl auslesen 13 SaschaSchulz 1136 26. Sep 2005, 07:35
Gast Aus Datenfeld Anzahl auslesen
Keine neuen Beiträge Excel Formeln: >>Variable im VERWEIS() Matrix-Bereich, geht nicht !!& 2 df 2340 28. Jun 2005, 12:36
Gast >>Variable im VERWEIS() Matrix-Bereich, geht nicht !!&
Keine neuen Beiträge Excel Formeln: automatisches Speichern des Tabellenblatts mit Makro 6 Frank vhet 841 11. Mai 2005, 13:14
Frank vhet automatisches Speichern des Tabellenblatts mit Makro
Keine neuen Beiträge Excel Formeln: Makro per Button ausführen lassen und if then problem 5 Darwin 3876 09. Mai 2005, 14:57
Darwin Makro per Button ausführen lassen und if then problem
Keine neuen Beiträge Excel Formeln: vertikale ausgabe einer anzahl werte 7 grim reaper 688 21. Apr 2005, 19:14
Detlef 42 vertikale ausgabe einer anzahl werte
Keine neuen Beiträge Excel Formeln: Variable Zelle 2 segler 2003 20. März 2005, 17:57
segler Variable Zelle
Keine neuen Beiträge Excel Formeln: aktuelles Verzeichnis und Dokumentname als Variable? 4 holahido 1091 11. März 2005, 10:05
holahido aktuelles Verzeichnis und Dokumentname als Variable?
Keine neuen Beiträge Excel Formeln: Anzahl der Tage zwischen zwei Datumsangaben errechnen?? 2 chefkoch 1254 27. Jan 2005, 18:41
chefkoch Anzahl der Tage zwischen zwei Datumsangaben errechnen??
Keine neuen Beiträge Excel Formeln: Wert automatisch durch Anzahl der Tage in einem Monat teilen 2 mucky99 2180 17. Dez 2004, 08:52
mucky99 Wert automatisch durch Anzahl der Tage in einem Monat teilen
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Excel Formeln: Anzahl bei 2 Bedingungen aus Tabelle berechnen 1 Satanico 2570 20. Okt 2004, 13:31
steve1da Anzahl bei 2 Bedingungen aus Tabelle berechnen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Web Editor Forum