# Variable (Dateinamen) auf ungültige Zeichen überprüfen



## Terminator2 (16. Januar 2007)

Hallo Leute,

habe ein kleines großes Programm, in dem bestimmte Teile eines späteren Dateinamens eingegeben werden sollen. Diese Zeichen werden an ein automatisiertes Programm weitergegeben werden, welches dann die Maus steuert usw.
Jedenfalls würde alles geschrottet werden, wenn nun das fernzusteuernde Programm eine Fehlermeldung machen würde, weil ich das nicht berücksichtige. Daher sollen die Textfelder überprüft werden:

Wie kann ich also in einer Variable nach \ / : * ? " < > | überprüfen. Also zumindest das Hochkomma und das letzte Zeichen können ja nicht mit der InStr-Funktion überprüft werden. Hat also jemand eine Idee oder eine Funktion, mit der das geht?

mfg
Terminator


----------



## wincnc (17. Januar 2007)

Hallo, schau mal hier nach:
Einen String auf einen zulässigen Pfad hin prüfen


----------



## Terminator2 (17. Januar 2007)

Hallo,

das ist schon so ähnlich wie meine eigenen Überlegungen. Ich werde das mit den "verbotenen Zeichen" bei mir einbauen. Nur falls der Benutzer jetzt " eingibt, hat man natürlich pech gehabt, weil das wohl nicht geht ^^


----------



## vcl (1. Februar 2011)

Mit dieser Function können die nicht erlaubten Zeichen aus einem String entfernt werden:


```
Function CheckDateiname(sDateiname As String) As String

Dim sErgebnis As String
Dim i As Integer

sErgebnis = ""

'verbotene Zeichen \ / : * ? " < > |  löschen

For i = 1 To Len(sDateiname)
    Select Case Mid(sDateiname, i, 1)
    Case "\"
    Case """"
    Case "/"
    Case ":"
    Case "*"
    Case "?"
    Case "<"
    Case ">"
    Case "|"
        
    Case Else
        sErgebnis = sErgebnis + Mid(sDateiname, i, 1)
    End Select
    
Next i

CheckDateiname = sErgebnis
 
End Function
```

Gruß
VCL


----------

