2016-09-16 21 views
0

セルの値に基づいて行全体が淡色表示になるコードを取得できました。VBA:セルの値に基づいてn番目のセルごとにフォントの色を変更します。

今は必要: AV < 100におけるセル値場合は、すべての6列のフォントの色を変更した場合、AW < 100の値を列6 を開始、すべての6列のフォントの色を変更し、カラムを開始7. AX <の値が100の場合、列6を始点とする6列目のフォントの色を変更します。 Range AV:AZのすべての値でこれを行う必要があります。

本当にありがとうございました。

これは私が行全体を灰色に取り組んで取得するマネージコードです:

Range("AU1").Select 
    For i = 12 To LRow            'Do for Row 12 to end 
     If Cells(i, 47).value < 100 Then 
      Cells(i, 47).EntireRow.Font.Color = RGB(150, 150, 150) 
     End If 
    Next i 
+0

Offsetの「EntireRow」と使用を除去することによって、それを行うことができます条件付き書式設定を検討すると、より効率的に動作します。 – Rosetta

+0

私はそれができないことを恐れています。これは、自動化されなければならない大きなファイルの非常に小さなサブセグメントの1つです。私はこれを達成するためにVBAを使用することができなければなりません。レポートテンプレートは、20以上の同一の個別レポートに展開されます。残念ながら、効率的ではない20レポートにわたる条件付き書式設定。しかし、提案をありがとう。 – Hanret

答えて

0

あなたが代わりに代わり

Range("AU1").Select 
For i = 12 To LRow  'Do for Row 12 to end 
    If Cells(i, 47).value < 100 Then 
     For j = 1 to 10 ' this must be tuned to your need. 
      Cells(i, 47).Offset(0, 6*j +1).Font.Color = RGB(150, 150, 150) 
     Next j 
    End If 
Next i 
+0

ありがとうございました。しかし、それは私のためには全く役に立たない。さらに、既存の作業コードでコードを追加すると、突然それが動作しなくなります。上に掲げたコードは完璧に動作していました。私が必要とするのは、作業コードに加えて次のようなものです。Col AV <100の場合、Col 6から6番目の列ごとにCol AVまで、Col 6と6列目のフォントの色を変更します。 – Hanret

+0

ああ、申し訳ありませんが、私は最後まで読んでいませんでした。それでは、内部ループを作成する必要があります。私は優れているわけではないので、ここから調整することはできませんが、明日は表示されます。基本的な考え方で編集します。必要に応じて調整してみてください。 –

+0

ありがとうございます。私はあなたの提案を差し込み、元に戻します。とても有難い。 – Hanret

関連する問題