Hi Marc

Marc Santhoff wrote:

Am Mi, den 09.03.2005 schrieb [EMAIL PROTECTED] um 23:35:

Hoi Marc



Moin moin,

[...]

Stimmt, aber Du kannst "otion explicit" als erste Zeile im Modul
benutzen, dannmit werden  Tippfähler schonmal ausgeschlossen...




Nachdem ich durch einen Tippfehler etwas herumsuchen musste hatte ich genau diese Option aktiviert.
Aber dann ging es erst richtig los: Da die Fehler nicht beim Compilieren über die Symbolleiste gefunden werden - verstehe sowieso nicht was dieser Knopf soll, der bewirkt doch überhaupt nichts - kommen dann



Syntaxfehler finden. Aber eine erweiterte Typprüfung u.a. würde ich auch begrüßen...



Nun also bei mir bewirkt dieser Knopf "Basic Macro neu übersetzen" absolut nichts. Es werden
weder vergessene Klammern noch falsch geschriebene Variablen gefunden. Aber eben, ev habe
ich da wirklich eine schlechte OO-Version mit SUSE 9.1 bekommen.


haufenweise Meldungen von Laufzeitfehlern (die ich übrigends inzwischen gefunden habe - eine Pause bewirkt manchmal Wunder) wenn ich Ctrl-Shift-F9 anwende.



Es gibt Firmen, die werfen Dich nach 12 Stunden Arbeit einfach raus in den Feierabend.

Nützt auch nichts, wenn man zu Hause weitermacht .. :-)

Ist auch ökonomisch sinnvoll, sonst erzeugt man durch
die Fehler, die man übermüdet macht, zusätzliche Mehrarbeit.


Ist schon so...







- Dauernd Totalabstürze




Da dürfte nicht sein. Kannst Du irgendwie feststellen, welche Aktion den
Absturz provoziert?




Dies hatte immer mit diesen Laufzeitfehlern, Div durch 0 oä zu tun.
Wenn das Dokument nach einem Absturz wieder geöffnet wird, wird es wieder hergestellt, die Basicfunktionen werden aber
aus dem Sheet nicht mehr gefunden (sind aber in der Basic-IDE). Erst wenn das Dokument geschlossen und erneut geöffnet wird gehen diese wieder.



Tja, dabei kommt es wohl drauf an, an welcher Stelle der Absturz passiert. Im ungünstigen Fall eben wie bei Dir. Wenn allerdings etwa eine Division durch Null in aktuellen Versionen (1.1.3/4 bzw. 2.0Beta) reproduzierbar ABstürze erzeugt, sollte man dringend diesen Fehler melden (--> Issue schreiben).







- Obwohl man in Basic etwas ändert wird dies vom Sheet nicht übernommen. Man hat das Gefühl, dass irgendwo noch auf eine alte Version zugegriffen wird. Plötzlich wird die eigene Basic-Routine auch nicht mehr erkannt. Obwohl man einen Breakpoint setzt wird dieser oft gar nicht erreicht weil irgendwo auf eine andere gespeicherte Version zugegriffen wird. Mit "alles schliessen und neu öffnen" kann man dieses Problem manchmal lösen. Test's werden dadurch aber äusserst mühsam. Man kriegt Calc nur mit Ctrl-Shift-F9 dazu alles neu zu berechnen, was aber dann häufig zu Abstürzen führt weil irgendwo eine Referenz oder sonst was nicht stimmt. Aber eben, die Fehlermeldungen sind dazu schlicht unbrauchbar.




Hört sich ja schrecklich an. Wenn der Fehler im BASIC passiert solltest
Du die IDE geöffnet und die betreffende Zeile angezeigt bekommen. Welche
Version von OOo und welches Betriebssystem benutzt Du denn?




Ist es auch.
Ich habe OO 1.1.1 unter Suse 9.1
Wäre schön, wenn die fehlbare Zeile angezeigt würde. (Basic-IDE habe ich logischerweise offen).
Meist wird aber gar nichts von Baisc angezeigt. Manchmal überlagert sich ein Teil des Basic-Codes mit dem Sheet.
Nur einmal konnte ich erkennen welche Zeile markiert war.
Frage nebenbei. Bilder (Screenshots) sollte man wohl hier nicht mitschicken?



Klingt nach einem Problem mit der Ressourcenfreigabe und dem "inneren Zustand" des BASIC-Interpreters. Als erstes würde ich mal eine neuere Version testen. Und vor allem das Original statt der Suse-Verson, wäre nicht das erste mal, das ein Distributor einen schlechten Job bei der eigenen Anpassung von OOo gemacht hat.

Soweit ich weiß gibt es verschiedene Pläne für die Renovierung der IDE,
aber mit der 2.0 wird das sicher nix.







Das grosse Manko, dass Zellen nur als CallByValue übergeben werden kann leider nur mit grossem Aufwand und gebastel umgangen werden.




Ohne den Quelltext zu sehen, wird man Dir schwer helfen können.




Quelltext aus dem Original Excel-VBA ?



Ich meinte den OOo-Quelltext. Passiert mir auch öfter, das ich Fehler nicht mehr entdecke, die jemand anders auf den ersten Blick findet. Aber scheinbar hast Du die Probleme ja bereits im Griff.



Durch Deinen Anstoss nahm ich noch einmal einen Anlauf und konnte nun eine profisorische Lösung finden (Zwar noch nicht in allen Details getestet).

Hier meine Lösung mit OO:



[...Quelltext gelöscht...]

Das sieht wirklich fürchterlich aus. Leider habe ich im Moment nicht so
viel Zeit übrig, um mich damit weitergehend auseinanderzusetzen, aber
hast Du mal den Thread:

"[de-users] Calc: Gewichteter Mittelwert"

gelesen? Sieht aus, als wäre das exakt was Du erreichen willst,
allerdings ohne Makro dafür mit einer Hilfsspalte.


Habe diesen Thread angeschaut, ist aber gar nicht was ich brauche. Mein Fall ist
etwas komplizierter, da die Prüfungen einerseits gewichtet und andererseits nach
einem Polynom (nicht linear) gerechnet werden.


Vieleicht kannst Du Dir damit das Makro sparen

Wahrscheinlich gibt es sicher auch eine andere Lösung über mehrere Hilfsspalten etc.
Dies scheint mir aber eher Fehleranfällig wenn z.B. weitere Spalten für Prüfungen hinzugefügt
werden. Die Lösung mit VBA war halt so schön einfach und weil ich im Softwareengineering tätig
bin geht es meist einfacher schnell eine Basicroutine zu schreiben als eben mit Tricks und
Zwischenspalten zu operieren.


... und fällt mir auf:

Es sollte wirklich eine Möglichkeit geben, die Anzahl der optionalen
Parameter zu erfragen und gezielt (indiziert) darauf zuzugreifen.
--> Issue schreiben, wenn's noch keinen gibt


War schnell mal auf der Homepage. Aber das Issue-Query-Formular schreckt mich ab.
So auf die Schnelle weiss ich nicht was ich wo eingeben muss um das gewünschte
Ziel zu erreichen.


Gruß,
Marc



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Antwort per Email an