Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Programmiertechnik- Programm beenden

Programmiertechnik- Programm beenden
06.10.2004 10:57:28
Wolfgang
Hallo.
Ich arbeite an einem umfangreichen AddIn mit vielen Subs und Functions.
Dabei werden auch Textdateien eingelesen, bearbeitet, ins Excel übertragen usw.
Wie behandle ich auftretende Fehler z.B. wenn eine Datei nicht vorhanden ist?
Zur Zeit gebe ich eine msgbox aus und beende dann mit end. Ich denke aber das das keine schöne Methode ist.
Wie mach ich das am besten?
Dank, Gruß Wolfgang
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Programmiertechnik- Programm beenden
06.10.2004 11:14:23
ANdreas
Hallo Wolfgang,
du machst eine If-Abfrage, wenn die nicht erfüllt ist, wird der ganze Rest einfach nicht durchlaufen und gleich ans Ende gesprungen.
Wie Du prüfen kannst ob eine Datei vorhanden ist, zeigt Hans in seiner Excel-FAQ:
https://www.herber.de/mailing/074599h.htm
Wenn Du das in einer Function machst, kannst Du ja Rückgabewerte an die aufrufende Sub zurückgeben und dort je nachdem, entscheiden was geschehen soll. (-1 könnte dabei z.B. als Fehler stehen)
End braucht man dabei eigentlich nicht.
Hoffe das hilft weiter,
Andreas
Anzeige
AW: Programmiertechnik- Programm beenden
06.10.2004 11:20:01
Wolfgang
Bedeutet das ich sollte alle subs in functionen umbauen und im fehlerfalle einen Wert zurückgegen, mit dem im Hauptprogramm die Ausführung von weiterem Code verhindert wird?
Ist das gängige Vorgehensweise?
AW: Programmiertechnik- Programm beenden
06.10.2004 11:37:21
ANdreas
Hallo Wolfgang,
also ich habe es so gelernt.
Wer sonst als das Hauptprogramm soll das entscheiden?
Eine Funktion wird in der Regel von verschiedenen Prozeduren aufgerufen - die teilweise unterschiedlich auf Fehler reagieren müssen. Im Idealfall sollte die Funktion nichts beenden und es der aufrufenden Sub überlassen.
Auch wenn Du nur in einer Sub eine Funktion mehrmals aufrufst, kann es ja durchaus vorkommen, das ein Fehlerrückgabewert unterschiedlich behandelt wird (einmal z.B. neue Eingabe des Users erforderlich, dadurch erneuter Aufruf der Funktion, das andere mal stört eine fehlerhafte Eingabe evtl. nicht, weil Du z.B. einen Standardwert nehmen kannst).
Ausnahme könnte man natürlich machen, wenn Du 100% weißt, das ein bestimmter Fehler in einer Funktion immer sofort zum Abbruch führen soll.
Dann nimmst Du Dir aber zum Beispiel die Möglichkeit, wenn das Hauptprogramm noch irgendetwas vor dem Beenden machen muss - dieser Fall kann sich ja zum Beispiel erst in einer Woche ergeben - weil ein Anwender irgendwas neues haben möchte. Daher wäre es schon ratsam, es zu lösen wie beschrieben.
Gruß
Andreas
Anzeige
AW: Programmiertechnik- Programm beenden
06.10.2004 11:49:03
Wolfgang
Ja gut, leuchtet mir völlig ein.
Dankeschön!!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige