Fehlerbehandlung

06/02/2011 - 09:12 von Ahmed Martens | Report spam
Hallo Leute,

ich habe hier ein Problem, wo ich einfach nicht weiterkomme.

Aus einem Formular wird eine Prozedur in einem anderen Modul aufgerufen.
In dieser Prozedur wird folgender Code-Abschnitt ausgeführt:

<Code Main>
...

Löschen_Zieldatei:

2410 If fncPrüf_Datei(strFileSearch) = True Then
2420 If blnOverwrite = True Then
2430 strFile = strFileSearch
2440 Kill strFileSearch
2450 Else
2460 i = i + 1
2470 strFileSearch = fncEditFile(strFile, i, True)
2480 Do While fncPrüf_Datei(strFileSearch) = True
2490 i = i + 1
2500 strFileSearch = fncEditFile(strFile, i, True)
2510 Loop
2520 End If
2530 End If

...
<\Code Main>

In dieser Prozedur Main gibt es jetzt eine Fehlerbehandlung, falls die
Datei strFileSearch nicht gelöscht werden kann.

...

3300 Select Case Err.Number

Case 68
3310 MsgBox "Laufwerk nicht vorhanden oder nicht bereit!", vbCritical
3320 Err.Clear
3330 Resume Next

3340 Case 70 'Datei für Löschen gesperrt (ggf. geöffnet)


3350 Select Case fncKillAnswer(strFileSearch)

Case 0 'gewartet bis Anwendung geschlossen wird
3360 Err.Clear
3370 GoTo Löschen_Zieldatei

3380 Case 1 'Zàhler wird angefügt
blnOverwrite = False
Err.Clear
GoTo Löschen_Zieldatei

3450 Case 2 'Abbruch / Aufràumen der Reste

'[code fehlt noch]

3460 End Select
3470 Case 364
3480 Err.Clear
3490 Resume Next


3500 End Select


Und jetzt zu meinem Problem.

Die On Error-Anweisung wird immer genau einmal ausgeführt. Ich möchte,
nachdem die On Error-Anweisung durchlaufen ist, dass die gesamte
Teil-Prozedur ausgeführt wird. Aber sobald hier wieder der Fehler 70
auftaucht, wird die Main-Prozedur komplett verlassen und wieder auf das
Ursprungsformular zurückgegangen. Ich möchte aber die Prozedur erst
verlassen, wenn dies auch wirklich vom Anwender gewünscht wird.

Was mache ich den falsch?
Ich bin echt ratlos und brauche Eure Hilfe.
Vielen Dank im voraus.

Gruß Ahmed

Antworten bitte nur in der Newsgroup
 

Lesen sie die antworten

#1 Ahmed Martens
06/02/2011 - 09:20 | Warnen spam
[Nachtrag]

Hier noch die fncKillAnswer

Private Function fncKillAnswer(strFileSearch) As Integer
Dim strMsg As String


strMsg = "Die Zieldatei '" & strFileSearch & ""

Load frmErrKill

With frmErrKill
.txtInfo.Text = strMsg
.Show vbModal
End With

fncKillAnswer = Val(frmErrKill.Tag)

Unload frmErrKill

End Function


Gruß Ahmed

Antworten bitte nur in der Newsgroup

Ähnliche fragen