Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
588to592
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
588to592
588to592
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Daten übergabe klappt nicht

Daten übergabe klappt nicht
27.03.2005 22:57:18
Martin
Hallo zusammen
ich doktor jetzt schon knapp ne Woche an einem Diagrammproblemherum.
Mittlerweile auf immer neuen Wegen, aber jeder bisher endet in einer Sackgasse.
Ich habe mal eine Beispieldatei angehängt: mein Problem: ich will die Daten von dem Blatt in ein DIagramm schreiben. Aber als WERTE, nicht die Bezüge. Und, 2., dann kriege ich das nicht hin, bereich1 und bereich2 als ARRAY zu übergeben. Der Bereich, in der die Daten stehen, kann auch sehr lang werden. Wäre sehr nett, wenn mir jemand helfen könnte.
Danke gruß Martin

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
ok, hier der Code...
27.03.2005 23:05:10
Martin
..sorry, bin schon ziemlich groggi von der sache

Sub monats() 'masch As String, kwoche As Long, scol As Long, zcol As Long
' wochenausblender
Application.ScreenUpdating = False
Dim bereich1
Dim bereich2
bereich1 = Worksheets("zielblatt").Range("A2:A32")
bereich2 = Worksheets("zielblatt").Range("B2:B32")
diagramm_machen bereich1, bereich2
Application.ScreenUpdating = True
End Sub


Sub diagramm_machen(a, b)
' das diagramm für eine enzelne Woche
Dim cht_benkw As ChartObject
Set cht_benkw = Worksheets("zielblatt").ChartObjects.Add(200, 100, 400, 250)
With cht_benkw
.Name = "martine5"
'    .Chart.ChartType = xlLineMarkers
.Chart.ChartType = xlXYScatterSmooth
With .Chart
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = a
.SeriesCollection(1).Values = b
'    .SeriesCollection(1).XValues = Worksheets("zielblatt").Range("A2:A32")
'    .SeriesCollection(1).Values = Worksheets("zielblatt").Range("B2:B32")
.Legend.Delete
End With
.Name = "martine5"
'    .Chart.ChartType = xlLineMarkers
.Chart.ChartType = xlXYScatterSmooth
End With
cht_benkw.Chart.SeriesCollection.NewSeries
With cht_benkw.Chart.SeriesCollection(1)
.XValues = Array(gae_datumy)
.Values = Array(gae_wertex)
End With
Range("a1").Select
Set cht_benkw = Nothing
End Sub

Anzeige
AW: ok, hier der Code...
28.03.2005 08:43:08
Nepumuk
Hallo Martin,
das Array das du übergibst, muss die richtige Struktur haben.
Beispiel:


Option Explicit
Sub diagramm_machen(a, b)
    Dim cht_benkw As ChartObject
    Set cht_benkw = Worksheets("zielblatt").ChartObjects.Add(200, 100, 400, 250)
    With cht_benkw
        .Name = "martine5"
        .Chart.ChartType = xlXYScatterSmooth
        With .Chart
            .SeriesCollection.NewSeries
            .SeriesCollection(1).XValues = a
            .SeriesCollection(1).Values = b
            .Legend.Delete
        End With
    End With
End Sub
Public Sub test()
    Dim x(10, 0), y(10, 0)
    Dim iIndex As Integer
    For iIndex = 0 To 9
        x(iIndex, 0) = iIndex ^ 2
        y(iIndex, 0) = iIndex * 2
    Next
    Call diagramm_machen(x, y)
End Sub


Gruß
Nepumuk
Anzeige
soweit ok, aber...
28.03.2005 11:12:06
Martin
Danke, Nepumuk
Der Code funktioniert soweit, aber das Ergebnis bleibt das Gleiche: will ich sehr viele Daten (A1:A1500) in ein Diagramm zeichnen, kommt Fehler 1004, das XValue nicht festgelegt werden kann. Wahrscheinlich, weil die 255 Zeichen in XValue voll sind. Wie kriege ich also knapp 1500WERTE in ein Diagramm?
Aber trotzdem danke, dass du dich am Ostern meinem Problem annimmst.
Gruß Martin & frohe Ostern
AW: soweit ok, aber...
28.03.2005 11:44:50
Nepumuk
Hallo Martin,
dann musst du ein Chartspace - Object aus den Office - Webkomponenten benutzen. Ich habe es gerade mal mit 10.000 Datenreihen getestet. Es dauert zwar ein bis zwei Sekunden, aber sie werden einwandfrei angezeigt.
Gruß
Nepumuk
Anzeige
? ahja..
28.03.2005 12:25:08
Martin
Danke dir, Nepu
Habe mal eben ein wenig bei MSDN gelesen, kapiert habe ich das aber nicht. Heißt also, es gibtkeine einfachere Lösung, wie ich ein Diagramm aus einigen 100 Werten kreieren kann? Ja Wahnsinn, da kann ich ja das ganze Projekt kippen. Danke trotzddem. Gruß Martin
^öh..
28.03.2005 15:58:12
Martin
Hallo Nepumuk
vielen Dank, dass du dir die Müh gemacht hast. VBA klappt an sich schon ganz gut, doch Diagramme und Array mache ich nu das erste ma.
Ich werde nun das ganz Projekt noch mal umstricken müssen. Hatte nicht gedacht dass das Diagramm das größte problem wird. deine Lösung werde ich mal durchgehen, aber sie wird wohl nicht in frage kommen. danke nochmal,... gruß Martin
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige