Q
は、シート名
3
A
答えて
7
を使用することができます信じていますあなたは無効なもののために有効な文字列のためのTrue
、False
を返すために、以下のようなregexp :)
何かを使用して、すでに述べています。
上記の項目を追加しました。必要に応じて特殊文字をエスケープしています。
[更新:追加の置換機能]
Sub TestCleanNames()
Dim StrArr()
Dim StrTst
StrArr = Array("Am i ok", "Sheet||a", "audited??", "Sheet1")
For Each StrTst In StrArr
MsgBox StrTst & " = " & ValidSheetName(CStr(StrTst)) & vbNewLine & CleanSheetName(CStr(StrTst))
Next
End Sub
有効な名前の機能
Function ValidSheetName(strIn As String) As Boolean
Dim objRegex As Object
Set objRegex = CreateObject("vbscript.regexp")
objRegex.Pattern = "[\<\>\*\\\/\?|]"
ValidSheetName = Not objRegex.test(strIn)
End Function
クリーン機能
Function CleanSheetName(strIn As String) As String
Dim objRegex As Object
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
.Global = True
.Pattern = "[\<\>\*\\\/\?|]"
CleanSheetName = .Replace(strIn, "_")
End With
End Function
0
clean()を見ましたか?
また、ビットメシエが、私は、あなたは喜んであなたがこれらの文字のほとんどは、シート名の文字、つまり*?[]
など
しかしなどとして、既に無効であることがわかります'substitute'
Substitute(text, old_text, new_text, nth_appearance)
関連する問題
- 1. 可変シート名は
- 2. フォルダ名がシート
- 3. NameError:名「シート」が
- 4. シートのループ(名前)
- 5. Dyanmic VBAシート名が
- 6. SSRSエラー、無効なシート名
- 7. EXCEL VBA - シート名が変数
- 8. 式の動的シート名
- 9. Googleシートの列名でシートのセル値を別のシートに抽出する
- 10. ウェブスクレーピング時にファイル名とは異なるシート名を書く
- 11. xlswrite:シート名に変数名を表示またはどこか
- 12. Excelシート内のセルを介した参照シート名
- 13. シートからシートに名前付き範囲のコピーをExcel
- 14. Python Excel - シート名をシート番号に変更する方法
- 15. 別のシートの参照シート名に変数を使用
- 16. 同じシート名:シートが一致する場合にコピー&ペースト
- 17. =シート名のセルアドレスを調べる
- 18. APIv4 Googleシート名札で開く
- 19. RDLCでシート名を変更する
- 20. シート名のExcelファイルのFilePathを取得
- 21. C#シート名のないOleDBへのExcel
- 22. VBA Excelのカウント同じシート名Occurences
- 23. 可変シート名を持つVba Vlookup
- 24. excel ASP.Netからシート名を取得
- 25. alasqlシート名に特殊文字
- 26. 出力シートにソースシート名を含める
- 27. excel vba:変数としてシート名
- 28. 内部シート名のコンボボックスの値
- 29. XLRDError:シート名が<'Sheet1'>で、Pythonで
- 30. SQL ServerでExcelシート名を取得
+1バックスラッシュ、 '/'、 '*'、 '?'は、ワークシート名の禁止文字なので、テストする必要はありません。 – JimmyPena
残念ながら実際のシート名と私が言及している名前は異なります - 私の名前はシートのヘッダーに入ります!しかし、brettdjの応答はこの1つで、非常に完璧です、ありがとう! – sgtpepper113