Option Explicit
Public Function IsStringValid(ByVal str As String) As Boolean
On Error Resume Next
Dim testStr As String
testStr = StrConv(str, vbFromUnicode)
If Err.Number <> 0 Then
Err.Clear
IsStringValid = False ' 字符串包含乱码
Else
IsStringValid = True ' 字符串没有乱码
End If
End Function
Private Sub Command1_Click()
Dim str1 As String
Dim str2 As String
Dim str3 As String
Dim isValid As Boolean
str1 = "澶╅緳鍏儴3dvip绛夌骇浠锋牸鐗规潈浠嬬粛"
str2 = "澶╅緳鍏儴3d鎵嬫父vip鐗规潈浠嬬粛"
str3 = "澶╅緳鍏儴3dvip鐗规潈" '检测字符串是否包含乱码
isValid = IsStringValid(str1)
MsgBox "字符串1: " & IIf(isValid, "有效", "乱码")
isValid = IsStringValid(str2)
MsgBox "字符串2: " & IIf(isValid, "有效", "乱码")
isValid = IsStringValid(str3)
MsgBox "字符串3: " & IIf(isValid, "有效", "乱码")
End Sub