Wer kennt das nicht: man möchte eine Datei erzeugen, z.B. aus einem E-Mail oder einem Eintrag in einer Excel-Liste oder … Und dann klappt das Speichern nicht, weil der Dateiname Ungültiges enthält. Das ist beim Automatisieren von Abläufen eher, hm, hinderlich.
Abhilfe schafft dieser Codeschnipsel – eine hübsche VBA-Funktion:
Public Function makeSaveName(myText As Variant) As Variant
Dim Pos As Long
Dim Chars As Variant
For Pos = 1 To Len(myText)
If InStr(1, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ -_äöüÄÖÜß0123456789", Mid(myText, Pos, 1)) <> 0 Then
makeSaveName = makeSaveName & Mid(myText, Pos, 1)
End If
Next Pos
End Function
Viel Spaß beim Einsetzen!