gibt es das Dokument "Kostenabrechnung.ods" nicht zum Download oder übersehe ich das nur?
Nein und nein. Aus im Wesentlichen drei Gründen, die ich nicht diskutieren möchte:
- Die Datei ist für den Gebrauch einiger weniger Personen vorgesehen und ist daher in Teilen persönlich. Was nicht heißt, dass man sie nicht anonymisieren könnte.
- Der real existierende Kontext kann nicht als allgemein bekannt angenommen werden und müsste heftig erläutert werden.
- Der wichtigste Grund aber ist, dass ich als Blinder nicht glaube, andere Blinde führen zu können. Ich betrachte mich immer noch als Anfänger in der Python-Programmierung und staune immer wieder, wenn ich Problemlösungen von Könnern sehe. Wenn ich die Kostenabrechnung ins Netz stelle, fürchte ich, schlechte (oder zumindest verbesserungsbedürftige) Beispiele zu liefern.
Ich habe beileibe keine Angst vor Kritik, würde sie sogar begrüßen. Daher werde ich Einzelaspekte auswählen und sie zur Diskussion stellen. Karolus und andere werden freundlich genug sein, mich zu korrigieren.
Mit Python zu programmieren lernt man sicher besser in der User-Umgebung beginnend mit ganz einfachen Strukturen, die nach und nach komplexer werden. Dieser Weg hat mir jedenfalls gut geholfen, und zwar immer wieder neu mit jedem neuen Problem. Für reine Python-Tests ohne OO-Beteiligung ist die Konsole im Spyder eine wunderbare Spielwiese.
Um die interne Struktur einer ods-Datei in der Form zu sehen, wie ich sie beschrieben habe, genügt es sicher, zwei oder drei einfache Dialoge in der IDE zu bauen, einfache Basic-Funktionen als Ereignisbehandlung zu definieren und dann schauen, wie das so aussieht. Und wenn man dann die Basic-Prozeduren Stück für Stück durch Python-Funktionen ersetzt, kann man den Arbeitsablauf besser nachvollziehen als mit einer
fertigen Datei mit fast 3000 Zeilen Code, deren Sinnhaftigkeit man sich mühsam erschließen muss. Um die Pfaderweiterung zu testen, sollten mindestens zwei Python-Module verwendet werden, von denen eines als Library importiert wird (zum Beispiel mit der msg_box-Funktion).
Schöne Grüße
Volker