Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1452to1456
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
Inhaltsverzeichnis

Graph erzeugen. X-Werte stimmen nicht

Graph erzeugen. X-Werte stimmen nicht
23.10.2015 21:14:17
Tobias
Hey Leute,
ich habe eine Userform erstellt, mit dessen Hilfe der Benutzer verschiedene Graphen erzeugen kann. Dabei kann er selber den Wertebereich VON BIS bestimmen. Leider werden die x-Werte in den Graphen nicht richtig übernommen.
Der User wählt x1=-100 (Anfang des Wertebereichs)
Der User wählt x2=100 (Ende des Wertebereichs)
Es wird der Durchschnitt d errechnet d=(Abs(x1)+Abs(x2))/n
Wobei n=1000 ist (Anzahl der Punkte)
x(1)=x1
x(n)=x2
For i=2 To n-1
x(i)=x(i-1)+d
Next i
Wobei x eine Variable darstellt. Nun sage ich, dass XValues=x ist. Aber jetzt übernimmt der Graph von x=1 bis x=1000. Also die Anzahl der Punkte.
Dabei ist beigefügt.
http://en.file-upload.net/download-10992164/Userform.xlsm.html
Finde leider den Fehler nicht. Wäre sehr dankbar über Hilfe.
Tobi

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Graph erzeugen. X-Werte stimmen nicht
23.10.2015 22:19:39
Daniel
Hi
das problem ist folgendes:
ein echtes x-y-Punkte-Diagramm kann Excel nur erstellen, wenn alle x-Werte Zahlen sind.
ist jedoch ein x-Wert ein Text, kann Excel die Zuordnung nicht mehr vornehmen.
Normalerweise wäre es jetzt üblich, dem Anwender eine ordentliche Fehlermeldung um die Ohren zu hauen, aber Excel und VBA versuchen Fehler des Anwenders so weit wie möglich glatt zu bügeln und trotzdem ein Ergebnis zu liefern.
In diesem Fall werden dann die x-Werte ignoriert und es wird stattdessen die Reihenfolge der Werte von 1-n als x-Wert verwendet
du holst dir den Text in die x-Werte, weil du den ersten Wert X(1) direkt aus der Textbox zuweist:
x(1) = b1 und b1 = Textbox1.Text
weil x als Variant deklariert ist und Textboxen immer Text enthalten (auch wenn dieser nur aus Ziffern besteht) wird x(1) eben auch ein Text.
du müsstst als bei der Zuweisung von x(1) den Textboxwert in eine Zahl wandeln:
x(1) = CDbl(b1)
in allen Folgeindizes entstehen dann richtige Zahlen, weil du hier den Text (x(1)) in einer Berechnung verwendest und Excel dann versucht, diesen Text in eine Zahl zu wandeln und das funktioniert ja.
Nur bei der direkten Zuweisung (ohne in eine Berechnung eingebettet zu sein) muss VBA natürlich den Originaldatentyp von b1 beibehalten.
Gruss Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige