VBScript lacks a Like operator. A common approach is to translate the pattern strings to use VBScript's RegExp object, but you could use the IsLike function below instead:
Public Function IsLike(ByVal Input, ByVal Pattern)
If Input = "" Xor Pattern = "" Then
IsLike = False
Exit Function
End If
If Input = "" And Pattern = "" Then
IsLike = True
Exit Function
End If
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "\+(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\+")
.Pattern = "\.(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\.")
.Pattern = "\{(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\{")
.Pattern = "\}(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\}")
.Pattern = "\((?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\(")
.Pattern = "\)(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\)")
.Pattern = "\|(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\|")
.Pattern = "\?(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, ".")
.Pattern = "\*(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, ".*")
.Pattern = "#(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "\d")
.Pattern = "\[!(?=\x5B*(?!\x5D))"
Pattern = .Replace(Pattern, "[^")
Pattern = "^" & Pattern & "$"
.Pattern = Pattern
IsLike = .Test(Input)
End With
End Function