Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
144to148
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
144to148
144to148
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

immer gleiches Ergebnis

immer gleiches Ergebnis
05.08.2002 09:29:00
Conny
Hallo,
wünsche einen guten Montagmorgen.
Kann mir vielleicht bitte jemand sagen, warum ich stets das gleiche Ergebnis herausbekomme (nämlich -0,000892756), obwohl ich unterschiedliche Ausgangswerte hab?
Habe schon den Quellcode Stück für Stück ablaufen lassen aber in den Variablen stehtnix drin. Verstehe das nicht! Bin dankbar für jeden Lösungsansatz.
Hier der Quelltext:

Danke Conny

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

Betreff
Datum
Anwender
Anzeige
Re: immer gleiches Ergebnis
05.08.2002 10:45:39
GerdZ
Hallo Conny,

das Ergebnis ist abhängig von der aktiven Zelle, nicht von der Zelle, in der die Funktion steht. Vielleicht solltest Du das ändern:
Statt


Function EigeneFunktion() As Double
schreibst Du

Function EigeneFunktion(b as Long) As Double
und löschst die Zeile "b = ActiveCell.Row".
Die Funktion wird dann in der Tabelle aufgerufen mit:

=EigeneFunktion(Zeile())
Dadurch ist das Ergebnis abhängig von der Zeile, in der die Funktion steht.
Eine andere Fehlerquelle könnte der Wert der Variablen Glättung sein. Zur Überprüfung evtl.

Debug.Print "Glättung = ";Glättung
nach Glättung = Worksheets(6).Cells(26, 16).Value einfügen.

Gruß
Gerd


Anzeige
Re: immer gleiches Ergebnis
05.08.2002 11:06:02
Conny
Hallo Gerd
vielen Dank für die Hilfe.
Hab es grad abgeändert. Der Fehler lag bei der Glättung, da der Wert nicht übernommen wurde. Hab ihn jetzt festgelegt und es geht.
Leider geht es nur für die ersten vier Zeilen also von 16 bis 19 und ab 20 kommt jetzt immer 0 raus.
Hättest du da vielleicht auch noch eine Idee wo der fehler liegen könnte?
Nochmals vielen Dank für die Hilfe!
Gruß Conny
Re: immer gleiches Ergebnis
05.08.2002 11:40:51
GerdZ
Hallo Conny,

da ist wohl noch ein logischer Fehler in Deiner Funnktion.
Von Zeile 19 bis 21 wird Steigung1 bis Steigung5 und Steigung7 berechnet, Steigung6 wird nicht berechnet und bleibt leer. Wenn jetzt in Zeile 19 Steigung5 kleiner wie das 16fache von Glättung ist, wird als Ergebnis ABS(Steigung6) zurückgegeben. Steigung6 ist aber leer und ABS() von einer leeren Variablen ist in VBA = 0.

Gruß
Gerd

Anzeige
Re: immer gleiches Ergebnis
05.08.2002 11:46:29
Conny
Hallo Gerd ,
danke nochmal aber irgendwie steh ich wohl grad auf dem Schlauch. Wieso wird Steigung6 nicht berechnet? und warum berechne ich bei 19 bis 21 die steigung1,5 und 7???
Gruß Conny
Re: immer gleiches Ergebnis
05.08.2002 12:13:05
GerdZ
Hallo Conny,

Steigung6 wird nur berechnet, wenn b (die Zeilennummer; hier 19) zwischen 16 und 18 liegt.
Da dies bei b=19 nicht zutrifft, wird das, was zwischen diesem elseif und dem endif steht, nicht ausgeführt.
Das mit Steigung1 bis Steigung5 war ein Fehler von mir.
Berechnet wird in Zeile 19 nur Steigung5 und Steigung7.
Die anderen werden nicht berechnet, da b auserhalb des jeweils geprüften Bereichs liegt.

Gruß
Gerd


Anzeige
Re: immer gleiches Ergebnis
05.08.2002 13:12:33
Conny
Hallo Gerd,
das habe ich jetzt verstanden. Danke!
Aber mein eigentliches Ziel ist es ja, daß wie in dem Beispiel bei Zeile 19 nur Die Steigung 6 berechnet und als ergebnis für die untere if-abfrage übernommen wird, und nicht zusätzlich auch noch die 7te. Weisst du was ich meine?
Gruß Conny
Re: immer gleiches Ergebnis
05.08.2002 13:50:19
GerdZ
Hallo Conny,

die 7te wird immer berechnet, da diese Berechnung mit keiner IF-Abfrage eingeschränkt ist.
Deine unteren IF-Abfragen sind unvollständig oder falsch.
Du überprüfst die Zeilennummern und vergleichst den Absolutwert z.B. der Steigung5 mit dem 16fachen von Glättung. Überprüfe doch mal den Inhalt der Variablen mit


Debug.Print b, Steigung5, 16 * Glättung

Gruß
Gerd





Anzeige
Re: immer gleiches Ergebnis
05.08.2002 14:15:13
Conny
Hallo Gerd,
ich denke du hast Recht, was die unteren if-Abfragen angeht, leider weiss ich momentan keine andere Lösung.
Wahrscheinlich wäre es das vernünftigste noch mal von vorn zu beginnen und es vielleicht als case bedingung zu formulieren.
Ich werde dabei selbstverständlich deine guten Tips berücksichtigen. Also nochmlas vielen Dank du hast mir sehr weitergeholfen!!
Gruß Conny

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige