0

目標:
セル内に "Total" という単語が見つかった場合、"Total" という単語が開始点 (列に文字 D) があり、文字 H までの現在の行の背景色は明るい灰色になります。「合計」がない場合、背景はデフォルトになります。

問題:
VBA を使用してどのようにすればよいですか?

ここに画像の説明を入力

4

2 に答える 2

1

条件付き書式で試すことができます。セルを選択して「フォーマット」->「条件付き書式」に移動するだけです(これはExcel 2003のパスです。2007以降はわかりません)

ただし、必要に応じてマクロを使用できます。これを行う方法の例を次に示します。

Sub RowsToGrey()
Dim r As Long, i As Long
r = Cells(Rows.Count, 4).End(xlUp).Row
For i = 1 To r
    If InStr(Cells(i, 4), "Total") Then
        Range(Cells(i, 4), Cells(i, 8)).Interior.ColorIndex = 15
    Else
        Range(Cells(i, 4), Cells(i, 8)).Interior.ColorIndex = 0
    End If
Next i
End Sub

それが役立つことを願っています。

于 2013-06-11T09:41:15.640 に答える
0

条件付き書式の背景については、 Debra のサイトを参照してください。純粋な条件付き書式でアクティブな行のみを強調表示する実際のアプローチは、実際には非常に困難でした.99.9%の結果が得られましたがこれを機能させるために数式を更新するための計算イベントが必要でした.

FWIW、あなたが適用する場合:

  1. この条件付き書式の数式を列D:H範囲に適用します
    =AND(NOT(ISERROR(SEARCH("Total",$D7))),ROW(INDIRECT(CELL("address")))=ROW(INDIRECT(ADDRESS(ROW()+RAND()*0,COLUMN()))))
  2. Calcuateイベントを追加

ステップ2

  • シートタブを右クリック
  • View - Code
  • 以下のコードをコピーして貼り付けます

コード

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calculate
End Sub

ここに画像の説明を入力

于 2013-06-11T09:56:54.540 に答える