2017-01-25 4 views
0

誰かが次のことを実現する方法を知っていますか?選択した範囲内のデータを含むセルをカラー化する

私は、Excelシートのセルの範囲を選択しました。ショートカットキーを押した後、データを含む選択された範囲の各セルは赤色で塗りつぶされます。

あり、そのためのデフォルトのExcelの機能ではないようだが、おそらくそれは、VBAで行うことができますか?

残念ながら、次のコードが期待どおりに動作しません:この上

Sub ColorizeCells() 
    Dim Data As Range 
    Dim cell As Range 
    Set Data = Selection 

    For Each cell In Data 
     If Not cell.Value Is Nothing Then 
      cell.Interior.ColorIndex = 4 
     End If 
    Next 

End Sub 

任意の提案を高く評価されています。

+0

何の条件付き書式について?公式は、例えば、 '' A2 <> '' '?何を試しましたか? – BruceWayne

+0

で利用可能なオプションのトン[**インターネットは**]があります(https://www.google.com/search?q=excel+vba+change+cell+color+in+range+if+cell+contains+値&OQ =優れ+ VBA +変更+細胞+カラー+ +範囲の+ +細胞+は+の値が含まれている場合&AQS = chrome..69i57.23423j0j7&ソースID =クロム&IE = UTF-8#Q =優れ+ VBA +変更+細胞+色+で+レンジ)。何か試しましたか? – ManishChristian

+0

@ManishChristian彼らのほとんどは私が試したが、実際には好きではなかった条件付き書式を使用しています。残りのものは、あらかじめ定義された範囲内の細胞のみが考慮されることを考慮していない。 – Rickson

答えて

0

ティム・ウィリアムズのヒントは、トリックを行いました。ありがとう!

次のコードは動作します:

Sub ColorizeCells() 
    Dim Data As Range 
    Dim cell As Range 
    Set Data = Selection 

    For Each cell In Data 
     If Len(cell.Value) > 0 Then 
      cell.Interior.ColorIndex = 4 
     End If 
    Next 
End Sub 
関連する問題