Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


Share this Page URL
Help

Kapitel 8: So erstellen Sie Prüffunktion... > 8.2 So prüfen Sie die Existenz einer... - Pg. 157

So prüfen Sie die Existenz einer Arbeitsmappe dann in das Zielverzeichnis gewechselt, und über die Methode SaveAs wird nun die Arbeitsmappe dort gespeichert. Als Speichername kann ein beliebiger Text wie zum Beispiel »Kosten« angegeben werden, in dem zusätzlich das aktuelle Tages- datum ergänzt wird. Sollte die Funktion Date nicht das richtige Datum liefern, dann kann dies über die Datumseinstellung in der Systemsteuerung von Windows angepasst werden. 1 2 3 4 5 6 7 8.2 So prüfen Sie die Existenz einer Arbeitsmappe Die Existenz einer Arbeitsmappe sollte auf jeden Fall gewährleistet sein, wenn ver- sucht wird, diese zu öffnen oder gar zu löschen. Beim Versuch, eine Arbeitsmappe zu öffnen, die nicht vorhanden ist, wird der Laufzeitfehler 1004 ausgelöst. Beim Versuch, eine nicht existente Arbeitsmappe von der Festplatte zu entfernen, wird der Laufzeitfehler 53 (Datei nicht gefunden) angezeigt. Beide Fehlermeldungen können unterdrückt werden, indem die folgende Lösung aus Listing 8.3 angewen- det wird: Listing 8.3: Existiert die angegebene Arbeitsmappe? Function MappeDa(s As String) As Boolean MappeDa = False If Len(s) > 0 Then MappeDa = (Dir(s) <> "") End Function 8 9 10 11 12 13 14 15 16 Die Funktion MappeDa erwartet einen String, in dem der Name sowie der komplette Pfad der Datei übergeben wird, die anschließend geöffnet oder gelöscht werden soll. Über die Funktion Len kann überprüft werden, ob überhaupt ein Text als Dateiname an die Funktion übergeben wurde. Wenn ja, dann liefert diese Funk- tion einen Wert größer als null. In diesem Fall wird die Funktion Dir angewendet, um zu testen, ob die gewünschte Datei überhaupt vorhanden ist. Wird die so angesteuerte Datei gefunden, dann meldet die Funktion Dir einen Wert ungleich leer zurück. Im diesem Fall gibt die Funktion MappeDa als Rückgabeargument den Wert True zurück. Im anderen Fall wird als Rückgabeargument der Wert False übergeben, der ja standardmäßig zu Beginn der Funktion gesetzt wurde. Sehen Sie jetzt in Listung 8.4, wie eine Datei, in Abhängigkeit von ihrer Existenz, geöffnet bzw. gelöscht wird. Listing 8.4: Löschen bzw. Öffnen. einer Arbeitsmappe nach erfolgter Prüfung Sub DateiLöschen() Dim b As Boolean Const Datei = "D:\Eigene Dateien\Mappe1.xls" b = MappeDa(Datei) If b = True Then Kill Datei Else 157