Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
988to992
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
988to992
988to992
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

...seriescollections(1).values =WertArray

...seriescollections(1).values =WertArray
25.06.2008 12:23:23
michael
hallo zusammen.
ich hab an zig verschiedenen proben jeweils zig verschiedene messwerte gemessen und stelle automatisiert x/y-diagramme für jede messwertpaarung dar.
als ich mein tool vor einem halben jahr verwendet hab, hat´s noch funktioniert, jetzt liefert der versuch die xy-Daten einzutrage zum (vielsagenden *g*) Laufzeitfehler '1004'
anbei ein paar code auszüge
...
Dim wX(), wY()....
dim aCh as Chart
...
...
aCh.Parent.Activate
With aCh
.SeriesCollection("Roh").XValues = wX
.SeriesCollection("Roh").Values = wY
.SeriesCollection("FRoh").XValues = Array(minX, maxX)
.SeriesCollection("FRoh").Values = Application.WorksheetFunction.Trend(wY, wX, Array(minX, maxX), True)
....
End With
......
hier ein shot der aktuellen daten
Userbild
witzigerweise funktioniert die direktfenstereingabe:
.SeriesCollection("Roh").XValues=Array(1, 1, 1, 1, 1)
schon.
ich bitt euch um hilfe
danke
michael

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ...seriescollections(1).values =WertArray
26.06.2008 01:13:09
fcs
Hallo Michael,
wenn ich ich die Infos in deinem Screenshot richtig lese, dann versuchst du den X-Werten einer Diagramm-Reihe mit 5 Datenpunkten 24 X-Werte zuzuordnen.
Das könnte der Grund für den Fehler sein.
Warum die Prozedur früher durchgelaufen ist und heute nicht mehr?
ggf. müßtest du im Code den Datenreihen vor der Wertzuweisung eine entsprechende Anzahl Datenpunkte hinzufügen.
Gruß
Franz

AW: ...seriescollections(1).values =WertArray
26.06.2008 08:22:32
michael
Danke und Guten Morgen, Franz!
Das mit der Punktanzahl war mein erster Gedanke den ich schon vorm posting überprüft - aber dummerweise nicht im posting dokumentiert - hab. sry
Ein paar Experimente und Vergleiche mit künstlichen und realen Daten zeigt, dass das Problem vermutlich durch die "Genauigkeit" meiner Rohdaten hervorgerufen wird.
Hier ein shot, der mich verdacht schöpfen lies:
Userbild
Dazu folgendes Direktfenster-Experiment:

?wy(4)
9,94453830896937E-02
wy(4) = 9.94453830896937E-02
aCh.SeriesCollection("Roh").Values = wY 'geht nicht
?"wy(4)=";wy(4)
wy(4)= 9,94453830896937E-02
wy(4) = 9.94453830896937E-02*1.0
aCh.SeriesCollection("Roh").Values = wY 'geht nicht
?"wy(4)=";wy(4)
wy(4)= 9,94453830896937E-02
wy(4) = 9.94453830896937E-02*1.5
aCh.SeriesCollection("Roh").Values = wY 'geht !!!!!
?"wy(4)=";wy(4)
wy(4)= 0,149168074634541
wy(4) = round(9.94453830896937E-02 ,16)
aCh.SeriesCollection("Roh").Values = wY 'geht nicht
?"wy(4)=";wy(4)
wy(4)= 9,94453830896937E-02
wy(4) = round(9.94453830896937E-02 ,15)
aCh.SeriesCollection("Roh").Values = wY 'geht !!!!!
?"wy(4)=";wy(4)
wy(4)= 0,099445383089694

Ich werd das Problem also durch Runden beim Erzeugen der Matrix wY umgehen, aber......
BITTE WARUM IST DAS SO? +ratlosguck?+
LiGrü und danke für´s tüfteln
Michael
ps.: ich hab mir noch angeschaut, wie 'ausgefüllte' '.values' aussehen:
Userbild
am Datentyp kann´s dann eigentlich ja nicht liegen? +ratlosbin+

Anzeige
AW: ...seriescollections(1).values =WertArray
26.06.2008 10:16:14
michael
ojemine.....
das mit dem runden war´s auch nicht...
der "Fehler 1004": "Die XValues-Eigenschaft des Series-Objektes kann nicht festgelegt werden."
tritt auch nach der rundung z.t. wieder auf....
und bei gleicher anzahl von diagrammpunkten und datenfeldern, und auch wenn die indizes beide male von "1" weg laufen.
+such-such-such-such+
wer hat ideen?
bitte, danke und LiGrü
Michael

AW: ...seriescollections(1).values =WertArray
26.06.2008 15:04:23
fcs
Hallo Micheáel,
hier mal meine Testmakros (Excel 2003 SP 2, Professional, Windows XP) mit denen ich in einem Linien-Diagramm experimentiert hab. Für den letzten Datenpunkt werden zwar z.Teil bedingt durch die Konversion, oder weil der Wert vom Typ "String" ist, falsche Werte berechnet, aber es gibt keine Fehlermeldung.
https://www.herber.de/bbs/user/53373.xls
Bei dir muss noch irgend etwas anderes nicht passen. Nur was?
Ich hab auch keine Idee, bei welchen Problemen die Meldung "Werte konnten nicht zugordnet werden" angezeigt wird.
Gruß
Franz

Anzeige
AW: ...seriescollections(1).values =WertArray
26.06.2008 15:04:30
fcs
Hallo Micheáel,
hier mal meine Testmakros (Excel 2003 SP 2, Professional, Windows XP) mit denen ich in einem Linien-Diagramm experimentiert hab. Für den letzten Datenpunkt werden zwar z.Teil bedingt durch die Konversion, oder weil der Wert vom Typ "String" ist, falsche Werte berechnet, aber es gibt keine Fehlermeldung.
https://www.herber.de/bbs/user/53373.xls
Bei dir muss noch irgend etwas anderes nicht passen. Nur was?
Ich hab auch keine Idee, bei welchen Problemen die Meldung "Werte konnten nicht zugordnet werden" angezeigt wird.
Gruß
Franz

Anzeige
AW: ...seriescollections(1).values =WertArray
27.06.2008 10:35:00
michael
hi franz,
danke für deine bemühungen,
den verdacht mit dem bug bei der typumwandlung im rahmen der arrayübergabe hab ich auch.
wenn ich unmittelbar vor der zuweisung des arrays an die datenreihe runde dann klappts nämlich, wenn ich hingegen die rundung in einer anderen prozedur (zb. bei der arrayerstellung oder in einer eigenen sub) durchführe klappt´s zeitweise wieder nicht.
das tool läuft auch nicht mehr mit den daten die ich vor längerem erfolgreich korreliert hab. ich fürcht, da haben mir M$-updates was durcheinander gebracht....
dummerweise haben sich nun auch andere routinen in diesem projekt als nicht mehr zuverlässig herausgestellt. und zwar immer dann, wenn ich arrays zwischen subs übergebe.
.... und in dem ganzen progrämmchen mach ich eigentlich nix anderes !!!!!!! :((((
ich werd also das ganze projekt überarbeiten müssen, bloß dumm, dass ich die ergebnisse bereits am 7.7 präsentieren muss.
"danke bill!"
ligrü und danke!

Anzeige
saben wir halt "it´s not a bug, it´s a feature"
03.07.2008 08:15:00
michael
hi franz,
ich hab jetzt das tool gänzlich überarbeitet, mir immer vor der zuweisung gedanken über die notwendige genauigkeit gemacht und gerundet und zudem einige funktionalitäten eingebaut, die ich in meiner ursprünglichen version vermisst hab.
als wie "hie und da" bei µ$oft könnte man sagen: "IT'S NOT A BUG, ITS A FEATURE"
*grins*
LiGrü und danke nochmal
Michael

AW: ...seriescollections(1).values =WertArray
26.06.2008 13:03:57
fcs
Hallo Michael,
ich hab noch einmal etwas rumprobiert mit verschiedenen Varianten der Daten im Array (Als Zahl, Text im US oder Deutschen Format, mehr und weniger als 15 signifikante Ziffern), Deklaration des Array mit unterschiedlichen Datentypen (Variant oder Double), Zuweisung der Daten in eine dimensioniertes Array oder in eine Variant-Variable.
Deinen Fehler konnte ich jetzt nicht reproduzieren.
Aber es scheint in der Tat so zu sein, dass es ein Problem gibt, wenn man versucht Zahlen in Exponentialdarstellung mit 15 signifikanten Stellen und negativem Exponenten in einem Variant-Array den Werten einer Datenreihe zuzuordnen.
Ursache ?, Scheinbar funktioniert die Umwandlung von Variant nach Double für Datenreihen dann nicht.
Excel ist bezüglich Zahlenverarbeitung/Darstellung in Tabellenblättern ja auch etwas merkwürdig.
Es wird mit 15 signifikanten Ziffern gearbeitet. In der Eingabezeile werden Zahlen mit bis zu 20 Ziffern aber dezimal dargestellt auch bei Exponetialeingabe und entsprechend mit führenden/nachgestellten Nullen aufgefüllt. Bei Werten kleiner 1 ist der Übergang zur Exponentialschreibweise dann variabel entsprechend der Anzahl signifikanter Stellen.
0,000000000000000012 = 1,2 E-17 Noch dezimal
1,23456789012345E-06 nur Exponential
Irgendwo in diesen Zahlenkonversionen dürfte dein Problem mit der Wertzuweisung für die Diagramm-Datenreihe zu suchen sein.
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige