2つのシートからなるワークブックがあります。シート1の1列目のセルの背景色を、シート2の2列目の値に基づいてフォーマットしたい。
例えば、シート2の6行目、2列目の値が「4」の場合、シート1の4行目、1列目の背景色を緑にしたいと思います。もし、sheet2, column 2の値がどれもsheet1の特定の行を参照していない場合は、無色に設定したいと思います。シート2の2列目に同じ値が複数回現れることは禁止されていません。シート1の行を参照しているシート2の最後の値を削除する場合、色の設定を解除する方法を教えていただければ、ボーナスクルーがいます。
しかし、私はエクセルを使う機会がほとんどなく、黒帯になる時間もありません。どなたかアドバイス、ポインタ、または簡単な計算式を教えていただけませんか?もし、これを実装するために複雑なVBコードが必要になるのであれば、その価値はありません。
ありがとうございました。
これは名前付きの範囲でも実行できるため、Sheet1からSheet2にセルをコピーする必要はありません。
1。 名前付きの範囲を定義します。条件の基になる値を持つ列に「Sheet1Vals」と言います。 Insert \ Name \ Defineを使用して、新しい名前付き範囲を定義できます。..
メニュー項目。 名前を入力し、[参照]ボックスのセルブラウザを使用して、範囲内のセルを選択します。 範囲が時間とともに変化する場合(行を追加または削除)、セルを明示的に選択する代わりに、この式を使用できます。
`= OFFSET( 'SheetName'。!$ COL $ ROW、0,0、COUNTA( 'SheetName'。!$ COL:$ COL)) `。
列にヘッダー行がある場合は、最後の )
の前に -1
を追加します。
2。 名前付きの範囲を定義します。条件付きでフォーマットする値を持つ列に「Sheet2Vals」と言います。
3。 条件書式設定ダイアログを使用して条件を作成します。 ドロップダウンで「式Is」を指定してから、式にこれを置きます。
`= INDEX(Sheet1Vals、MATCH([FirstCellInRange]、Sheet2Vals))= [Condition]`。
ここで、 [FirstCellInRange]
はフォーマットするセルのアドレスで、 [Condition]
はチェックする値です。
たとえば、Sheet1の条件に「1」、「2」、「3」の値があり、フォーマットしている列がSheet2の列「B」である場合、条件付き形式は次のようになります。
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=1
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=2
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=3
次に、フォーマットペインターを使用して、これらのフォーマットを残りのセルにコピーできます。
ここでは、Excel2003で条件付き書式を使って行った方法を紹介します。
条件付き書式を Sheet1
に適用するには、 Sheet2
の値を Sheet1
にミラーリングする必要があります。
1.1. Sheet1
に移動します。
2.2. 列Aのヘッダーを右クリックし、quot;Insert;を選択して、新しい列を挿入する。
3.3.A1に以下の数式を入力します。
3.A1に以下の数式を入力します。
4.4. A1
を右クリックして "Copy
" を選択し、コピーします。
5.5. 数式を列のヘッダーを右クリックして "Paste
" を選択し、列 A
に貼り付けます。
Sheet1 の列の A
は、Sheet2 の列 B
の値を正確に反映しているはずです。
(注意:もし、A
の列が気に入らない場合は、Z
や他の列でも同じように機能します)......。
1.Sheet1
にとどまります。
2.2. 列のヘッダを左クリックして、B
を選択します。
3.3.メニュー項目 Format > Conditional Formatting...</code> を選択します。
4.4.
Condition 1
を "Formula is
" に変更し、この数式を入力します。
<code>=MATCH(B1,$A:$A,0)</code>.B1,$A:$A,0)</code>
5.5. Format...
ボタンをクリックし、緑色の背景を選択します。
これで、Sheet1
の一致するセルに緑の背景が適用されたことが確認できるはずです。
1.1. Sheet1
のままにしておきます。
2.2. A
の列のヘッダーを右クリックして、 "Hide
"を選択します。
これで、Sheet2
の内容が変更されると、自動的に Sheet1
が更新されるはずです。
Excel2003を使用しています。
条件付き書式を使用する際の問題点は、条件の中で他のワークシートやワークブックを参照することができないことです。 しかし、シート1の列とシート2の列を等しくすることはできます(例:=Sheet2!B6)。 下の例では、F列を使いました。次に、条件付き書式を使用することができます。 シート1、行、列1のセルを選択し、条件付き書式設定メニューに進みます。ドロップダウンから "Formula Is" を選び、条件を "=$F$6=4" に設定します。 書式ボタンをクリックし、「パターン」タブを選択します。 好きな色を選んで完了です。
書式設定ツールで他のセルに条件付き書式を適用することもできますが、Excelのデフォルトでは、条件の中で絶対参照を使用することに注意してください。もし相対参照にしたい場合は、条件からドル記号を削除する必要があります。
1つのセルに適用できる条件は3つまでです(条件付き書式設定ダイアログの下部にある追加>>ボタンを使用)ので、最後の行が固定されている場合(例えば、常に10行目になることがわかっている場合)、背景色をなしにする条件として使用することが可能です。 気になる最後の値が10行目にあると仮定して、(やはりシート1のF列をシート2の対応するセルに設定したと仮定して)1番目の条件をFormula Is =$F$10="" 、パターンをNoneに設定します。 これを最初の条件とすると、それ以降に矛盾する記述があっても上書きされます。
以下は、高度にフォーマットされた特定のシートまたはテンプレートを新しいスプレッドシートにコピーするときに元の色を復元するための独自のソリューションです。. すべてのデータを直接コピーするため、シートをコピーする必要がある場合にのみ機能し、異なるデータを持つ別のシートに色を適用するだけではありません。
元の形式のワークブックをctrl + gでコピーし、適切な範囲を選択します。
新しい作業シートに貼り付けてください。色がすべて変更されます。
宛先が強調表示されたまま、右クリックして[特別な貼り付け]に移動し、[すべて使用ソーステーマ]を選択して、今回は[値]のみで特別な貼り付けを繰り返します。これは、コピーした元のシートと同じでなければなりません。