ファイル・フォルダ名用にサニタイジング
※ ファイル・フォルダ名を作成時、利用できな文字があるとエラーになるので、サニタイジングする
'==========================================
' 危険な半角記号を全角に変換して安全なフォルダ名にする
'==========================================
Public Function SanitizeFolderNameFullWidth(ByVal nameIn As String) As String
Dim s As String
s = nameIn
'--- 改行・タブなど制御文字除去 ---
s = Replace(s, vbCr, "")
s = Replace(s, vbLf, "")
s = Replace(s, vbTab, "")
'--- 半角 → 全角 変換テーブル ---
s = Replace(s, "\", "\")
s = Replace(s, "/", "/")
s = Replace(s, ":", ":")
s = Replace(s, "*", "*")
s = Replace(s, "?", "?")
s = Replace(s, """", """)
s = Replace(s, "<", "<")
s = Replace(s, ">", ">")
s = Replace(s, "|", "|")
'--- 先頭・末尾のスペース・ピリオド(フォルダ名禁止) ---
s = Trim(s)
If Left$(s, 1) = "." Then s = "." & Mid$(s, 2)
If Right$(s, 1) = "." Then s = Left$(s, Len(s) - 1) & "."
'--- 空名対策 ---
If Len(s) = 0 Then s = "名称未設定"
SanitizeFolderNameFullWidth = s
End Function

コメント