条件付き書式、行全体ベース


84

条件付き書式に関連する回答を検索して読みましたが、うまく機能していないようです。何か問題がある可能性があります。

仕事用のワークシートがあります。それは私たちの避難所にいる動物のリストを含んでいます。私がやろうとしているのは、採用されている場合は行全体を緑色にすることです(列「G」の「X」で示されています)。私が持っていた=$G$2="X"=$G2="X"、どちらも仕事。ルールを設定したときにアクティブだった1つの行にのみ色が付けられ、別の行に「X」を入力しても何も起こりません。何が足りないのですか?

回答:


108
=$G1="X"

正しい(そして最も簡単な)方法です。条件付き書式は選択したセルでのみ機能するため、最初にシート全体を選択するだけです。私はそれを試したところ、それは完璧に動作します。G2ではなくG1から開始する必要があります。そうしないと、条件付き書式が1行オフセットされます。


4
この1つの小さな文がすべての違いをJust select the entire sheet first, as conditional formatting only works on selected cells.
生みました

1
@pnuts:それはSelect "Use a Formula to determine which cells to format"外部から来る多くの人々のためにそこでdiffをしたラインだと思います。OPはまだこれを取得しましたが、私たち全員ではありません:)
Mat M

2
実際には、これが機能するよう選択する必要があります。ワークシートの小さなテーブルにCFを適用できます。相対設定は、選択範囲の一番上の行に適用されます。たとえば、一番上の行が5で、現在の行の列Gの色付けをテストする場合は、になります$G5
マットM

4
これは私のためにそれを修正しましたYou must start at G1 rather than G2 otherwise it will offset the conditional formatting by a row
jwatts1980 2016年

1
しかし、これは単一の行に対してのみ機能します。200がある場合はどうなりますか... 200のルールが必要ですか?
gunslingor 2017

145

条件付き書式で「間接」関数を使用します。

  1. 条件付き書式を選択
  2. 新しいルールを選択
  3. [数式を使用してフォーマットするセルを決定する]を選択します
  4. 式を入力し、 =INDIRECT("g"&ROW())="X"
  5. 必要な形式(テキストの色、塗りつぶしの色など)を入力します。
  6. [OK]を選択して、新しい形式を保存します
  7. 条件付き書式で「ルールの管理」を開きます
  8. 新しいルールが表示されない場合は、「このワークシート」を選択してください。
  9. 新しいルールの[適用先]ボックスに、次のように入力します=$A$1:$Z$1500 (または、ワークシートに応じて条件付き書式を拡張する幅/長さ)。

Xを持つG列のすべての行について、指定した形式になります。列にXがない場合、行はフォーマットされません。

これを繰り返して、列の値に応じて複数の行のフォーマットを行うことができます。数式のg列またはx特定のテキストを変更して、さまざまな形式を設定するだけです。

たとえば、数式を使用して新しいルールを追加すると、H列にある=INDIRECT("h"&ROW())="CAR"すべての行CARが指定した形式でフォーマットされます。


2
これはおそらく初心者のエラーですが、列に数字(Xのような文字ではない)が含まれている場合は、これを機能させるために数字の前後の引用符を削除する必要があります-例:= INDIRECT( "T"&ROW())= 5
coruscate5 2017

行を強調表示するために私が見た最も簡単で最良の答えの1つ。
Prabesh 2017

この回答は、Excel 2013を使用して私にとってはうまくいきました。受け入れられた回答は意味がなく、したがって、それを機能させる方法を見つけることができませんでした。この回答では、MAX関数を追加して、列g(私の場合はb)の最大値の行全体を強調表示するようにしました。また、値が変更された場合、ハイライトは最大値に従います。
Nelda.techspiress 2017年

あなたは天才の仲間です。
J. Wrong

9

単一のセルに基づいて行全体の条件付き書式を設定するには、その単一のセルの列アドレスを「$」でアンカーする必要があります。そうしないと、Excelは最初の列のみを正しく取得します。どうして?

Excelは、列のオフセットに基づいて、行の2番目の列の条件付き書式を設定しているためです。2番目の列について、Excelは1つの列を目的のルールセルの右側に移動し、そのセルを調べ、意図していなかったセルに基づいて列2を正しくフォーマットしました。

ルールセルのアドレスのCOLUMN部分を「$」で固定するだけで、満足できます。

例:その行の最後のセルが1に等しくない場合、テーブルの任意の行を赤で強調表示する必要があります。

表全体(見出しは除く)を選択します。「ホーム」>「条件付き書式設定」>「ルールの管理...」>「新しいルール」>「数式を使用して書式設定するセルを決定する」

次のように入力します: "= $ T3 <> 1"(引用符なし... "T"はルールセルの列、 "3"はその行)フォーマットの設定[適用]をクリックします。

Excelが数式のどの部分にも引用符を挿入していないことを確認してください...挿入した場合は、バックスペース/削除してください(矢印キーは使用しないでください)。

条件付き書式は、テーブル全体に設定する必要があります。


2

カスタムフォーマットルールを適用したい。[適用先]フィールドは行全体である必要があります(行5をフォーマットする場合は、を入力し=$5:$5ます。カスタム数式は=IF($B$5="X", TRUE, FALSE)、次の例に示すように、である必要があります。


では、これはワークシートのすべての行で機能しますか?さらに、列(A5:G5など)に制限することはできますか?
Josh

1
はい、はい。行ごとに個別のルールを設定する必要がありますが、私は思います。1つのルールで各行を強調表示しようとすると、非常に複雑になります。その時点で、VBScriptを少し使用して目的を達成することをお勧めします。ルールを含む行をコピーして貼り付けると、ルールも貼り付けられるので、いつでも試すことができると思います。
qJake 2012年

0

RCアドレッシングを使用します。したがって、列Bの背景色を列Cの値に依存させ、行2から20までを適用する場合は、次のようにします。

手順:

  1. R2C2からR20C2を選択します

  2. 条件付き書式をクリックします

  3. [数式を使用してフォーマットするセルを決定する]を選択します

  4. 次の式を入力します:= RC [1]> 25

  5. 必要なフォーマットを作成します(つまり、背景色「黄色」)

  6. 適用対象:次のようになっていることを確認してください:= R2C2:R20C2

**「魔法」はステップ4で行われることに注意してください... RCアドレス指定を使用して、フォーマットされているセルの1列右側の値を調べます。この例では、書式設定されているセルの1列右側のセルの値に25より大きい値が含まれているかどうかを確認しています(T / F値を返すほとんどすべての数式をここに入力できることに注意してください)。


-2

私の場合、列Eのセルの値を列Gのセルと比較したかった

列Eでチェックするセルの選択を強調表示します。

条件付き形式の選択:セルルールを強調表示する私の場合は、より大きい選択肢の1つを選択します。ポップアップの左側のフィールドで= indirect( "g"&row())を使用します。ここで、gは比較対象の行です。

これで、フォーマットしている行が、行Gの選択よりも大きいかどうかに基づいて強調表示されます。

これは、列Eに対して行った選択の列Gのセルと比較して、列Eのすべてのセルで機能します。

G2がE2より大きい場合、フォーマットします

G3はE3よりも大きいフォーマットなど

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.