|
Sub Check_CellSt()
Dim MyR As Range, C As Range
Dim ObjRE As Object, Match As Object, Matches As Object
Dim CkSt As String, Ck As Boolean
On Error GoTo ErLine
Set MyR = Range("D:D").SpecialCells(2)
On Error GoTo 0
Set ObjRE = CreateObject("VBScript.RegExp")
With ObjRE
.Pattern = "\W"
.Global = True
End With
For Each C In MyR
CkSt = StrConv(C.Text, vbNarrow)
If ObjRE.Test(CkSt) Then
Ck = False: Set Matches = ObjRE.Execute(CkSt)
For Each Match In Matches
If Match.Value <> "_" Then
Ck = True: Exit For
End If
Next
Set Matches = Nothing
If Ck = True Then C.Interior.ColorIndex = 3
End If
Next
ErLine:
Set MyR = Nothing: Set ObjRE = Nothing
End Sub
で、どうでしょーか ? 英数とアンダースコア以外の文字が入力されたセルを、
赤で塗りつぶしてます。
正規表現で「かつ(And)」というPatternが設定できれば、\W にアンダースコア抜きの
意味を含ませることが出来るのですが、私には分かりません。どなたかご存知の方は、
レスをお願いします。m(_ _)m
|
|