• 締切済み

エクセル「条件付き書式」?

Excelに関して。 急ぎです。 ある条件によってセルの色を変更する方法を教えてください。 ネットで調べたところ、数値の変更で「条件付き書式」を使うと記載されていました。 私が、ネットで見つけたけど少し違うものが以下です。 例)テストの点数60点未満の場合→60未満の数字が入力されれば自動的に黄色く塗りつぶしをする設定 例)土曜日日曜日を自動的に色付けする設定 数値だったらネットを見て「条件付き書式」からのやり方で解決できそうなんですが、私が思っているのは、数値ではなく、「文字」なんです。 例えばひとつのセルに対し「山」「川」「海」と一文字ずつ入力していて、「山」は緑「川」は黄色「海」は青に塗りつぶしをしているとします。この山or川or海の文字を変更すれば自動的にセルの塗りつぶしの色も変更されるように設定したいというわけです。 この設定はやはり条件付き書式からの設定なのでしょうか。 変更の仕方、流れを教えていただけませんでしょうか(>_<) 長々とわかりにくい説明で申し訳ないのですが、これでわかっていただければ嬉しいです。 excel2010を使用しています。

みんなの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.8

 回答No7です。  何やらサイトのシステムが誤作動を起こして、投稿する事を途中で取りやめた、未完成の回答文まで、滅茶苦茶な時刻(その様な時刻には、未だ回答文を書き始めてすらおりません)に回答された事になっていますが、私が投稿したのは回答No7のみですので、回答No.5及び回答No.6は無視して下さい。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.7

>ルール上全員が出勤する事はないので、空白セルのある列が最後の出勤日とする、  その様なルールとなっているのですね。それでしたら、「一番最後に出勤した日」をExcelに自動判定させる事も可能です。  只、私が検討しました処、結構複雑な問題になる事が判りました。  何故なら、31日が無い2月、4月、6月、9月、11月には、AH列に「出」と入れたりはしないと思われますから、「AH列までの間に空欄が無い期間」を「未だチェックしていない期間」とする訳には行きませんし、「未だチェックしていない期間」が決まらなければ、「最後の出勤日」を求める事は出来ないからです。  他にも、配置換えや退社で、月の途中で乗務しなくなる従業員(下の添付画像の例ではCさん)がいる場合には、右隣の列が全て「出」となっているか否かで、「チェック済みの日」であるか否かを、Excelに自動で判断させる事も簡単ではなくなります。  そこで、適当なセルに、その乗務割表が何年何月の月用の表であるのかを示す、年月のデータを入力しておき、小の月の場合には、関数を使って存在しない日を表示しない様にする事で、月末の日付の列が何列であるのかを判定し易くし、 「月の途中で乗務しなくなる従業員」の行のセルに関しては、業務から外れた以降の日には「出」ではなく、「-」(半角ハイフォン)を入力する事で、「出勤日」、「休んだ日」、「公休日」の何れでもない事を表す様にする事にします。  尚、ここでは仮に「その乗務割表が何年何月の月用の表であるのかを示す、年月のデータ」をB1セルに入力する事とします。  まず、B1セルの書式設定の表示形式を[ユーザー定義]の yyyy"年"m"月乗務割表" として下さい。  尚、おそらくはB1セルだけでは、セルの横幅が不足して、内容を全て表示させる事は出来ないと思いますので、B1セルと、その右側にある数個のセル(例えばC1セル~J1セル等)を結合して、(B1~J1のセル範囲を)まとめて1個のセルにして下さい。  次に、A列において、「B列に従業員の名前がある行」のA列のセルにのみ連番を振って下さい。  この連番が入力されているセルの個数によって、従業員の人数をExcelに判断させますので、従業員の名前が無い行のA列のセルには数値や日時を入力しない様にして下さい。(文字列は入力しても構いません)  次に、以下の操作を行って、D3セルに条件付き書式を設定して下さい。 【Excel2007よりも前のバージョンの場合】 D3セルを選択   ↓ メニューの[書式]ボタンをクリック   ↓ 現れた選択肢の中にある[条件付き書式]をクリック   ↓ 現れた「条件付き書式の設定」ダイアログボックスの左端の欄をクリック   ↓ 現れた選択肢の中にある「数式が」をクリック   ↓ 「条件付き書式の設定」ダイアログボックスの左から2番目の欄に =COLUMNS($D:D)=MATCH(9E+99,INDIRECT("R"&MATCH("出勤者数",$A:$A,0)&"C"&COLUMN($D$3)&":C"&COLUMN($AH$3),FALSE)) と入力   ↓ 「条件付き書式の設定」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[パターン]タブをクリック   ↓ 現れた色のサンプルの中にあるセルを塗りつぶしたい色(下の添付画像の例では黄色)の四角形をクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式の設定」ダイアログボックスの[OK]ボタンをクリック 【Excel2007以降のバージョンの場合】 Excelウィンドウの[ホーム]タブをクリック   ↓ D3セルを選択   ↓ 選択されているセル範囲を変えないまま、「スタイル」グループの中にある[条件付き書式]ボタンをクリック   ↓ 現れた選択肢の中にある[新しいルール]をクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[数式を使用して、書式設定するセルを決定]をクリック   ↓ 現れた「次の数式を満たす場合に値を書式設定」欄の中に =COLUMNS($D:D)=MATCH(9E+99,INDIRECT("R"&MATCH("出勤者数",$A:$A,0)&"C"&COLUMN($D$3)&":C"&COLUMN($AH$3),FALSE)) と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にあるセルを塗りつぶしたい色(下の添付画像の例では黄色)の四角形をクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック  次に、D3セルをコピーして、D12セルに貼り付けて下さい。  次に、D3セルに、次の関数を入力して下さい。 =IF(ISNUMBER((TEXT(SUBSTITUTE($B$1,"乗務割表",)+0,"yyyy/m")&"/"&COLUMNS($D:D))/DAY($B$1)),TEXT(SUBSTITUTE($B$1,"乗務割表",)+0,"yyyy/m")+COLUMNS($D:D)-1,"-")  次に、D3セルをコピーして、D4セルに貼り付けて下さい。  次に、D3セルの書式設定の表示形式を[ユーザー定義]の d として下さい。  次に、D4セルの書式設定の表示形式を[ユーザー定義]の aaa として下さい。  次に、D3~D4の範囲をコピーして、E3~AH4の範囲に貼り付けて下さい。  次に、従業員の人数が例えば6名だった場合には、A12セルに 出勤者数 と入力して下さい。(何故A12セルかと言いますと、従業員の名前がB5セルからB10セルに入力されているので、1行あけた12行目に入力する)  次に、D12セルに、次の関数を入力して下さい。 =IF(AND(ISNUMBER(D$3),SUMPRODUCT(COUNTIF(INDEX($5:$5,COLUMN()):INDEX($D:$AH,ROW()-1,COLUMNS($D:D)),{"出","-","公"})*1)<COUNT($A:$A)),COUNTIF(INDEX($5:$5,COLUMN()):INDEX($D:$AH,ROW()-1,COLUMNS($D:D)),"出"),"")  次に、D12セルをコピーして、E12~AH12の範囲に貼り付けて下さい。  次に、AJ5セルに、次の関数を入力して下さい。 =IF(INDEX($B:$B,ROW())="","",COUNTIF(INDEX($D:$D,ROW()):INDEX($D:$AH,ROW(),MATCH(9E+99,INDEX($D:$D,MATCH("出勤者数",$A:$A,0)):INDEX(AH:AH,MATCH("出勤者数",$A:$A,0)))),"出"))  次に、AJ12セルに、次の関数を入力して下さい。 =SUM($AJ$5:INDEX($AJ:$AJ,ROW()-1))  次に、D5セルに 出 と入力して下さい。  次に、D3に条件付き書式を設定したのと同様の操作をD5セルに対して行って、D5セルに条件付き書式を設定して下さい。  但し、条件付き書式の条件として設定する数式は =AND(D5="出",COUNTIF(INDIRECT("RC:RC["&MATCH(9E+99,$D$12:$AH$12)-COLUMNS($D:D)&"]",FALSE),"出")=1,COLUMNS($D:D)<=MATCH(9E+99,$D$12:$AH$12)) として下さい。(出勤者数欄が12行目の場合)  次に、D5セルをコピーして、D5~AH5の範囲をコピーして、D列~AH列の「B列に従業員の名前が入力されている全ての行」に貼り付けて下さい。  最後に、「その乗務割表が何年何月の月用の表であるのかを示す、年月のデータ」をB1セルに入力して下さい。  例えば、2013年2月の表とする場合には、B1セルに 2013/2 などと入力して下さい。(それだけで「2013年2月乗務割表」と表示されます)  以上で準備は完了で、後は「出」を消していくだけで、各従業員の行の「一番最後に出勤した日」や、日付の行の「一番最後に出勤の有無をチェックした日」のセルが設定した色で塗りつぶされます。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 もしも、「山」、「川」、「海」等が入力されているセルのみを塗りつぶすのではなく、例えば「D列のセルに「山」、「川」、「海」等が入力されている場合には、同じ行のA列~E列のセル範囲を塗りつぶす」という場合には、以下の様な設定方法となります。 Excelウィンドウの[ホーム]タブをクリック   ↓ D1セルを選択   ↓ 現れた「スタイル」グループの中にある[条件付き書式]ボタンをクリック   ↓ 現れた選択肢の中にある[ルールの管理]をクリック   ↓ 現れた「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[数式を使用して、書式設定するセルを決定]をクリック   ↓ 「次の数式を満たす場合に値を書式設定」と記されている欄に次の数式を入力 =$D1=$A$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある緑色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「数式:$D1=$A$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[数式を使用して、書式設定するセルを決定]をクリック   ↓ 「次の数式を満たす場合に値を書式設定」と記されている欄に次の数式を入力 =$D1=$B$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある黄色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「数式:$D1=$B$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[数式を使用して、書式設定するセルを決定]をクリック   ↓ 「次の数式を満たす場合に値を書式設定」と記されている欄に次の数式を入力 =$D1=$C$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある青色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「数式:$D1=$C$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[適用]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[OK]ボタンをクリック

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 今仮に、A1セルに「山」、B1セルに「川」、C1セルに「海」と入力されていて、D1~D99のセル範囲に条件付き書式を設定するものとします。  その場合は、以下の様な設定方法となります。 Excelウィンドウの[ホーム]タブをクリック   ↓ D1セルを選択   ↓ 現れた「スタイル」グループの中にある[条件付き書式]ボタンをクリック   ↓ 現れた選択肢の中にある[ルールの管理]をクリック   ↓ 現れた「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[指定の値を含むセルだけを書式設定]をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左端の欄をクリック   ↓ 現れた選択肢の中にある「セルの値」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左から2番目の欄をクリック   ↓ 現れた選択肢の中にある「次の値に等しい」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある右端の欄に =$A$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある緑色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「セルの値=$A$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[指定の値を含むセルだけを書式設定]をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左端の欄をクリック   ↓ 現れた選択肢の中にある「セルの値」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左から2番目の欄をクリック   ↓ 現れた選択肢の中にある「次の値に等しい」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある右端の欄に =$B$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある黄色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「セルの値=$B$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[指定の値を含むセルだけを書式設定]をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左端の欄をクリック   ↓ 現れた選択肢の中にある「セルの値」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある左から2番目の欄をクリック   ↓ 現れた選択肢の中にある「次の値に等しい」をクリック   ↓ 「次のセルのみを書式設定」欄の中にある右端の欄に =$C$1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた色のサンプルの中にある青色の四角形を選択してクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「ルール(表示順で適用)」欄が「セルの値=$C$1」となっている行の「適用先」欄をクリック   ↓ D1~D99のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[適用]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[OK]ボタンをクリック

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

No.3です。 たびたびごめんなさい。 最初の入り方がちょっと違っていました。 「新しいルール」を選択すると、1条件設定後、もう一度条件付き書式の画面を出さないといけませんので 範囲指定 → 条件付き書式 → ルールの管理 → 新しいルール ・・・ と進んでください。 この方が条件付き書式をいくつも設定する場合は、すぐに「新しいルール」が選択できると思います。 何度も失礼しました。m(_ _)m

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

こんばんは! 条件付き書式で対応できます。 塗りつぶしたいセルを範囲指定 → 条件付き書式 → 新しいルール → 「指定の値だけを・・・」を選択  → 「次の値の間」の右側▼をクリック → 「次の値に等しい」を選択 → 右側の欄に「山」と入力 → 書式 → 塗りつぶし からこのみの色を選択しOK これで「山」に関する条件付き書式が設定されました。 次に 「OK」を押下すると「書式ルールの表示」画面に戻りますので 「新しいルール」を選択 → 先ほど同様に別条件の色を設定します。 この操作を色をつけたい数だけ設定して完了です。m(_ _)m

  • multiface
  • ベストアンサー率36% (308/834)
回答No.2

設定したいセルで条件付き書式の画面を出し、「指定の値を含むセルだけを書式設定」を選んでください。 次に、ルールで「セルの値」となっているところをクリックして「特定の文字列」とし、条件窓に「山」といれ、書式の塗りつぶしで緑色を選んでください。 これでOKとすれば、山が設定されました。 続けて川と海についても同じセルに設定すれば、3種の条件付き書式がそのセルに設定されます。 設定したセルで条件付き書式→ルールの管理とすれば、設定した3種の書式が見えます。 このセルをコピーすれば、条件付き書式もそのままコピーされます。 これでわかるでしょうか?

回答No.1