Option Explicit
' --------------------------------------------------------- 
' Funktion:           CheckFileName 
' Eingestellt von:    Andre Schau 
' Datum:              5. Juno 2006 
' Kommentar: File Name prüfen auf verbotene Zeichen 
' Parameter: strPath, optional iPathSep 0 mit "\", 1 ohne "\" 
' Rückgabe:  Erfolg: "", ansonsten Fehlermeldung 
' Aufruf: 
Sub CallCheckFileName()
'Variablendeklarationen 
'String 
Dim strCheck$
'Dateinamen pruefen 
'1 fuer keine Beruecksichtigung des Pfadseparators 
strCheck = CheckFileName("D:\Test\Mappe1.xls", 1)
'Ausgabe hier :, da : im Datei- und Pfadnamen nicht erlaubt 
If strCheck <> "" Then MsgBox strCheck
End Sub
' --------------------------------------------------------- 
Private Function CheckFileName(ByVal strPath As String, _
        Optional ByVal iPathSep As Integer) As String
'Ausgabe einer Zeichenkette mit enthaltenen verbotenen Zeichen 
CheckFileName = ""
If strPath = "" Then Exit Function
'Startpunkt für oder gegen Überprüfung auf \ 
If iPathSep > 1 Or iPathSep < 0 Then iPathSep = 0
'Variablendeklarationen 
'Variant 
Dim arrForbiddenChar
'Integer 
Dim iCnt%
'verbotene Zeichen 
arrForbiddenChar = Array("\", "/", ">", "<", ":", "*", "?", "[", "]", "¦")
'Schleiife ueber alle verbotenen Zeichen 
For iCnt = iPathSep To 9
  'Wenn verbotenes Zeichen enthalten, dann 
  'Rueckgabewert verbotenes Zeichen zuweisen 
  If InStr(1, strPath, arrForbiddenChar(iCnt)) > 0 Then _
     CheckFileName = CheckFileName & arrForbiddenChar(iCnt)
'Naechste Schleiife ueber alle verbotenen Zeichen 
Next
End Function