• ベストアンサー

エクセルの条件付き書式の条件を増やしたい

文字列のデータのなかで別のセルに入力した文字と一致するセルに着色したいのですが条件付き書式を使用し3色の指定(条件1、条件2、条件3)はできますが、検索するセル(入力セル)を10個(10色)に増やしたいのですが可能でしょうか?ウインドウズXP エクセル2003を使用しています。よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

No.2です! たびたびごめんなさい。 前回の投稿文の中で少し抜けている部分がありましたので、訂正させてください。 >画面左下の「Sheet1」のSheet見出し上で右クリック → VBE画面が・・・ の部分を >・・・Sheet見出し上で右クリック → コードの表示 → VBE画面が・・・ です。 途中の「コードの表示」を書き忘れたばかりに、操作方法が判りにくかったと思います。 何度も失礼しました。m(_ _)m

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! No.1さんが仰っているようにExcel2003以前のバージョンでは 条件付書式の設定は3つまでとなります。 そこでVBAでの一例です。 ↓の画像は当方使用のExcel2003でやってみました。 Sheet1のA列のセルに色を付けたい場合です。 Sheet2にデータ・セル色を入れておきます。 画面左下の「Sheet1」のSheet見出し上で右クリック → VBE画面がでますので、 ↓のコードをコピー&ペーストしてSheet1のA列データを変えてみてください。 Private Sub Worksheet_Change(ByVal Target As Range) 'この行から Dim i, j As Long Dim ws As Worksheet Set ws = Worksheets("sheet2") If Intersect(Target, Columns(1)) Is Nothing Then Exit Sub Application.ScreenUpdating = False Columns(1).Interior.ColorIndex = xlNone For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row If WorksheetFunction.CountIf(ws.Columns(1), Cells(i, 1)) Then j = WorksheetFunction.Match(Cells(i, 1), ws.Columns(1), False) Cells(i, 1).Interior.ColorIndex = ws.Cells(j, 2).Interior.ColorIndex End If Next i Application.ScreenUpdating = True End Sub 'この行まで ※ もし条件付書式の設定がある場合はVBAでは条件付書式で色付されたセルの色変更ができませんので 条件付書式をすべて削除してください。 以上、参考になれば良いのですが・・・m(_ _)m

kogorou100
質問者

お礼

丁寧なご回答ありがとうございます。 VBA操作は初めてになりますがやって見ます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

条件付き書式の設定ではできませんね。マクロが必要となります。

kogorou100
質問者

お礼

エクセル2003では条件付き書式は3条件までですね。2007ではもっと増やせるようになっていました。どうもありがとうございました。

関連するQ&A

  • エクセル 条件付き書式

    こんにちは。エクセルの条件付き書式を使って特定の文字を含む文字列に色を付けて表示したいのですが、うまくいきません。例えばDATA1,DATA2,DATA3...と入力して、条件を値=DATA*としてみたのですが、色が付きません。試しにセルにDATA*と入力してみたところ、色が付きました。これは*がワイルドカードとしてではなく、記号として認識されてしまっているということですか?どうすればDATAを含む全ての文字列に色を付けることができますでしょうか?よろしくお願いします。

  • エクセル2003 条件付き書式について

    こんにちは。いつもお世話になっております。 早速ですが、下記のような作業を条件付き書式で対応したいのですが教えて頂けますでしょうか。 ◆エクセルのバージョン → エクセル2003 ◆データ項目(列) A1(日付)/A2・・・以降A30位まで(作業項目) 各日の作業入力を列ごとにおこなっているので A2以降のセルに文字入力があればA1セルを自動的に塗りつぶし(水色) という作業を行いたいのですが条件付書式で対応可能でしょうか?

  • EXCELの条件付き書式で「~を含む」条件を設定したい。

    表題の通りですが、現在次のような表があり、「検索用セル」に特定の文字列を入力するとその文字列を含むセルの色が変わるようにしたいと思います。 例 データセル A5 AB123-4 A6 AB123-5 A7 AC124-7 A8 AB127-6 A9 AD123-8 A10 BC123-7 … このとき, A:検索用のセル(たとえばA2)に[123]と入力すると、A5,A6,A9,A10のセルの色が変わる。 B:検索用のセルに[AB]と入力すると、A5,A6,A8のセルの色が変わる。 C:検索用のセルに[AB123]と入力するとA5,A6のセルの色が変わる。 D:検索用のセルに[-7]と入力するとA7,A10のセルの色が変わる。 ※書式(色)はすべて同じでよい。  のようにしたいと思います。  Aだけの条件ならば、検索用のセルA2の書式を「文字列」に指定しておいて、A5の条件付き書式の数式設定で, =MID(A5,3,3)=$A$2 として書式設定すれば実現できる。  2つめの条件として、 =LEFT(A5,2)=$A$2 としてやれば、A,Bの2つの条件であれば目的が達成されます。  が、検索セルに入力する値(文字列)に条件がついてしまうので、柔軟性がありません。  できるだけ検索値に条件をつけたくないので、別の方法を考えています。  オートフィルターでは、「~を含む」(含まない)とか、「~で始まる」(終わる)といった抽出ができますが、条件付き書式でこのような条件の設定ができれば目的が達成できるのですが、そのような関数を見つけることができませんでした。どなたかご教授ください。

  • エクセルの条件付き書式

    条件付き書式について、指定したセルに入力(数字や文字を問わず)すると、セルの色が変わるよう設定したいのです。 ただ、数字の表示を3桁表示する必要があり、どうしても1~99までの番号には頭に「0」をつける必要があるため、条件付き書式を設定する前に、あらかじめ対象のセルには、セルの書式設定で表示形式を文字列に設定しています。 その設定をすることにより、条件付き書式が実行されません。 ですので、 (1)セルに001~099と表示されるよう入力するとセルの色が変わるやり方 と、 (2)数字ではなく文字を入力したときもセルの色が変わる設定方法 を、ご存知であれば教えてください。 エクセルの知識は「初心者~普通」程度です。 表計算などは出来ますが、関数やマクロはかじってる程度です。 簡単な回答をしていただけるとありがたいです。 よろしくお願いします。

  • エクセルの条件付き書式に関して

    パソコンに不慣れなため、質問がわかりづらかったら申し訳ありません。 えくせるの条件付き書式を行いたいのですが、 E列とH列の値が不一致ならばE列の値セルに塗りつぶしを行いたいです。 ただし、H列の値は手入力ではなく、vlookupで検索した結果を表示しています。 手入力の場合であれば、塗りつぶしが出来ましたが検索結果の場合は、条件付き書式は設定できないのでしょうか。 知識が乏しく申し訳ありませんが、ご回答よろしくお願いいたします。

  • エクセル2010で条件付き書式の方法

    エクセルの「D列」に文字列として数字が入力されています 例 23_2 30_3 56_1 等です この「D列」で左から2文字を判断して太文字あるいはフォント色を変更いたい場合 (条件書式ルールで 「数式を使用して、書式設定をするセルを決定」 を選択) 30_3 と入力されたセルの書式を変更したい場合・・ その時の数式の入力なのですが =LEFT(D1,2)="30" としたのですが機能しません どのように数式を打ち込めば良いか教えてください

  • エクセル 2007 条件付き書式について

    エクセル2007で、条件付き書式を活用したいのです。 たとえば、1列に10行のセルがあるとして、その10のセルのうち、各セルに何かしらの文字が打たれて、5つのセルが埋まったとします。そしたら、文字が赤くなるというのをやりたいのです。 10のうち4つセルに文字が入っているときは黒のままで、10のうち5つのセルに文字が打たれた場合だけ打たれている文字が赤くなってほしいのです。 このような条件付きはできるのでしょうか? わかりにくいかと思いますが、、、よろしくお願いします。

  • エクセル2010条件付き書式

    いつもお世話になっております。 質問です、宜しくお願いします。 条件付き書式についてですが、2010にしてから上手く出来ません。 具体的には、A列に入力した数値とB列に入力した数値が違うときに赤色で塗りつぶすというものです。 エクセル2007では、簡単に出来たのですが2010ではうまく出来ません。 条件付き書式→新しいルール→指定の値を含むセルだけを書式設定→セルの値 →次の値に等しくない→B1を選択 書式で塗りつぶし「赤」を選択。 これでA1とB1の数値が違っていれば、赤で塗りつぶしになります。 A2・・・・以降コピーしても書式がコピーされません。 どのようにすれば出来るのか教えて下さい。 文章でうまく伝えられていないと思いますが宜しくお願いします。

  • Excel の「セルの書式設定」に関して

    Excel 2010を使用しています。セルに「5-1」と入力すると「5月1日」と表示されてしまいます。それで入力前に「セルの書式設定」を「文字列」に指定してから入力すると「5-1」と表示してくれます。ところが Web ページなどからそのままコピー&ペーストすると入力前に「セルの書式設定」を「文字列」に指定したにもかかわらず,「5月1日」となり,勝手に「セルの書式設定」が「ユーザー定義」に切り替わってしまいます。Web ページなどからコピー&ペーストしたデータを「文字列」のまま入力させる方法はありませんでしょうか?

  • Excelの質問です。条件付き書式で特定のセルだけを塗りつぶしたいです。

    以前、似たような質問でお世話になったものです。 http://okwave.jp/qa5131560.html 前回は、「セルに指定した文字列がある場合、その文字列がある行の、A~L列全てを塗りつぶす」にはどうすればよいかという質問を致しまして、皆様のお力のおかげで、問題を解決することができました。 幸い、私のExcelには「条件付き書式」の機能が搭載されていましたので、A1セルをアクティブにした状態でデータを全選択し、 =COUNTIF($A1,"ch-*") と、条件を入力すれば、A列に"ch-*"があるデータを全て塗りつぶすことができました。 ですが今回は、A列に指定した文字列があれば、D~F列のみを、塗りつぶしたいのです。 局地的に条件を指定し、塗りつぶすには、どうすればよいのでしょうか?