jobo: VBA - Funktionen und Arrays und Fehlerbehandlung

Beitrag lesen

Hallo Vinzenz,

Hallo,

ohne Fehlerbehandlung :-)
Wie geht Fehlerbehandlung (;-///)???

On Error ...
On Error Resume Next ' Mache mit der nächsten Anweisung weiter
                     ' Prüfe, ob das Err-Objekt nicht etwa was enthält
                     ' Prüfe, ob Deine Objektvariable etwas enthält ...

On Error GoTo <Error-Handling-Bereich> ...

siehe VBA-Hilfe zu On Error.

Habe ich dann mal so abgekupfert, oder ist das an den falschen Stellen?

  
'...  
  
Set objWord = CreateObject("Word.Application")  
On Error GoTo Fehler  
  
objWord.Visible = True  
  
Set objDoc = objWord.Documents.Open(Pfad & "Vorlage.doc")  
On Error GoTo Fehler  
  
'... am Ende dann  
  
Fehler:  
    Set objWord = Nothing  
    Set objDoc = Nothing  
  
    MsgBox "FehlerNr.: " & Err.Number & vbNewLine & vbNewLine _  
    & "Beschreibung: " & Err.Description _  
    , vbCritical, "Fehler"  
  

Schreibe Dir eine vernünftige Funktion. Füge diese in Deine allgemeine Schnippselsammlung ein.

So in etwa?

  
Public Function AllowedFilenameString(FileNamePartInSpe As String)  
    Dim NotAllowedList As Variant  ' Liste der Primteiler  
    NotAllowedList = Array("<", ">", ":", """", "/", "\", "|", "?", "*")  
    For Each NotAllowedSign In NotAllowedList  
        FileNamePartInSpe = Replace(FileNamePartInSpe, NotAllowedSign, "-")  
    Next NotAllowedSign  
    AllowedFilenameString = FileNamePartInSpe  
End Function  
Private Sub TestAllowedFilenameFunction()  
    Dim TestString As String  
    TestString = """a/b/\*$%:|?<>$"  
    MsgBox (TestString)  
    Dim myReturnString As String  
    myReturnString = AllowedFilenameString(TestString)  
    MsgBox (myReturnString)  
End Sub  

Dank und Gruß

Robert aka jobo