・ー(マイナス)付きの数字を赤字
・+(プラス)付きの数字を青字
にするVBAの作り方をご紹介します。
- この minusakaandplusaoは、複数セルを選択した状態で、マクロを実行する形で使用します。
- +数値や-数値の検出に正規表現を利用しています。
Sub minusakaandplusao()
Dim strPat As String
Dim strTest As String
' -digits -> red
For Each r In Selection
strTest =r.Value
Set RE =CreateObject("VBScript:RegExp")
Set Matches = RE.Execute (strTest)
strPat = "(-|ー)\d+\.?\d" --- pattern for search
With RE
.Pattern = StrPat
.IgnoreCase =False
.Global = True
End With
SEt Matches = RE.Exceutes(strTest)
If Matches.Count <> 0 then
For Each Match In Matches
r.Characters(Start:=Match.FirstIndex + 1,Length:=Match.Length).Font.ColorINdex = 3
Next
Endif
Next r
'+digits => blue
For Each r In Selection
strTest =r.Value
Set RE =CreateObject("VBScript:RegExp")
Set Matches = RE.Execute (strTest)
strPat = "(\+|+)\d+\.?\d" --- pattern for search
With RE
.Pattern = StrPat
.IgnoreCase =False
.Global = True
End With
SEt Matches = RE.Exceutes(strTest)
If Matches.Count <> 0 then
For Each Match In Matches
r.Characters(Start:=Match.FirstIndex + 1,Length:=Match.Length).Font.ColorINdex = 5
Next
Endif
Next r
End Sub
0 件のコメント:
コメントを投稿