Excel 2003 です。

B列の特定の文字5種類 「a」、「b」、「c」、「d」、「e」 の色を赤に変えたいときのコードを教えてください。

回答の条件
  • 1人2回まで
  • 登録:2009/02/17 10:10:11
  • 終了:2009/02/17 10:53:02

ベストアンサー

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692009/02/17 10:36:58

ポイント60pt

他にも良い方法がありそうですが。

Sub changeColor()
    Dim lastRow As Long
    Dim i As Long
    Dim str As String
    Dim j As Long
    lastRow = Cells(Rows.Count, 2).End(xlUp).Row
    For j = 1 To lastRow
        If Cells(j, 2).Value <> "" Then
            For i = 1 To Len(Cells(j, 2).Value)
                str = Mid(Cells(j, 2).Value, i, 1)
                If str = "a" Or str = "b" Or str = "c" Or str = "d" Or str = "e" Then
                    Cells(j, 2).Characters(i, 1).Font.ColorIndex = 3
                End If
            Next i
        End If
    Next
End Sub
id:sakanainu

SALINGERさん、先日もお世話になりました。今回も早速ありがとうございます。一文字「a」だけの色を変えるのは調べることができたのですが、まだまだVBAがさっぱりわからず、複数の文字を変えるようアレンジすることができず困っていました。SALINGERさんの内容をしっかり解読したいと思います。ありがとうございました。

2009/02/17 10:51:42

その他の回答(1件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692009/02/17 10:36:58ここでベストアンサー

ポイント60pt

他にも良い方法がありそうですが。

Sub changeColor()
    Dim lastRow As Long
    Dim i As Long
    Dim str As String
    Dim j As Long
    lastRow = Cells(Rows.Count, 2).End(xlUp).Row
    For j = 1 To lastRow
        If Cells(j, 2).Value <> "" Then
            For i = 1 To Len(Cells(j, 2).Value)
                str = Mid(Cells(j, 2).Value, i, 1)
                If str = "a" Or str = "b" Or str = "c" Or str = "d" Or str = "e" Then
                    Cells(j, 2).Characters(i, 1).Font.ColorIndex = 3
                End If
            Next i
        End If
    Next
End Sub
id:sakanainu

SALINGERさん、先日もお世話になりました。今回も早速ありがとうございます。一文字「a」だけの色を変えるのは調べることができたのですが、まだまだVBAがさっぱりわからず、複数の文字を変えるようアレンジすることができず困っていました。SALINGERさんの内容をしっかり解読したいと思います。ありがとうございました。

2009/02/17 10:51:42
id:careplanner No.2

らいず回答回数338ベストアンサー獲得回数132009/02/17 10:40:33

ポイント35pt

設定したいセルを選択しておいて

条件付書式

「書式」-「条件付書式」で

「セルの値が」-「次の値の間」-「a」-「e」にして、書式ボタンで、文字の色を「赤」に設定すればできますよ。

id:sakanainu

ありがとうございます。VBAの中で使いたく、一文字「a」だけの色を変えるのは調べることができたのですが、まだまだVBAがさっぱりわからず、複数の文字を変えるようスマートにアレンジすることができず困っていました。しかし条件付書式でa-eとするのは知らなかったので今後の参考にさせていただきます。

2009/02/17 10:51:33

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません