電子書籍の厳選無料作品が豊富!

ExcelのVBAについて教えて下さい。
A1列に「あいうえお」と入っている場合は印刷時文字色を白(または空白)とする。
それ以外の文字が入っていれば文字色を黒とするにはどのようにVBAを書けばいいのでしょうか。
教えて下さい。

A 回答 (1件)

こんにちは


>入っている場合は、、、それ以外の文字が入っていれば
「ああいうえおあ」 は入っているけど、、それ以外もあるね。
変更する?しない? 
まあ、やり取りしてもしょうがないでしょうから
ご自身で変えてください。

セル内の文字色として
Dim Rng, key, r
Dim tmp, i, n: n = 0
Set Rng = Range("A1", Cells(Rows.Count, "A").End(xlUp))
ReDim tmp(Rng.Count)
key = "*あいうえお*"
For Each r In Rng
tmp(n) = r.Font.ColorIndex
If r.Value Like key Then
r.Font.ColorIndex = 2 '白 RGB(255,255,255)
Else
r.Font.ColorIndex = 1 '黒 RGB(0,0,0)
End If
n = n + 1
Next
ActiveSheet.PrintPreview 'プレビュー (印刷なら変更)

'フォント色を元に戻す
For i = 0 To UBound(tmp)
Cells(i + 1, 1).Font.ColorIndex = tmp(i)
Next

乱暴に書いてごめんね
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!