|
あなたの今の考え方の踏襲で、
Instr関数を使い1文字づつ調べ上げるなら、以下のようでどうでしょうか?
Sub Sample()
Const sMoji As String = "a b c"
Dim s As String
Dim n As Long
Dim v As Variant
Dim Ok As Boolean
s = Range("A1").Value
Ok = False: n = 1
Do
For Each v In Split(sMoji)
n = InStr(n, s, v)
If n = 0 Then Exit Do
n = n + Len(v)
Next
Ok = True
Loop Until True
If Ok Then
MsgBox "すべての文字がその順番で含まれてます"
Else
MsgBox "含まれてないか、その順番どおりでない"
End If
End Sub
ただ、その存在有無だけなら、Like演算子を使って
Sub Sample2()
Const sMoji As String = "*a*b*c*"
Dim s As String
s = Range("A1").Value
If s Like sMoji Then
MsgBox "すべての文字がその順番で含まれてます"
Else
MsgBox "含まれてないか、その順番どおりでない"
End If
End Sub
でいいのかもしれませんが。
|
|