• 締切済み

エクセルの条件付き書式

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

みんなの回答

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

 回答番号:ANo.7、8です。 >文字列を設定すると、条件付き書式の数字の設定はできません。  ANo.9様、御指摘有り難う御座います。  これは、ANo.7の > そんな筈はありません、別々に設定する事が可能な筈です。 という部分に対する御指摘だと思いますから、それに関しては御指摘の通りだと思います。  但し、ANo.7のセルの書式設定は、[文字列]ではなく、ANo.1と同様に、[ユーザー定義]の 000 としておりますから、解決方法としては間違いでは御座いません。  ANo.9の文面では、(解釈の仕方によっては)ANo.7において、セルの書式設定を[文字列]としているという誤解を与えかねない表現でしたので、念のために、述べさせて頂きました。  尚、ANo.1の御回答と、私のANo.7、8の違いは、(2)の条件付書式に関するもので、判定条件として、 ANo.1の御回答では "" と入力するとされておりますが、 私のANo.7、8では、 ="" と入力するとしております。  これは、 "" と入力すると、Excelが自動的に ="""" と変換してしまい、その結果、セルに "" と入力した場合には、色が着かないため、 >(2)数字ではなく文字を入力したときもセルの色が変わる設定方法 という条件に、完全には沿っている訳では御座いません。  ですから、ANo.7、8の様に、 ="" と入力した方が良い訳です。

  • mate0128
  • ベストアンサー率30% (31/102)
回答No.9

NO.1です。 NO.7さんへ 文字列を設定すると、条件付き書式の数字の設定はできません。 ですから、セルの書式設定では、ユーザー定義を設定する必要があります。 再度、書きませんが、NO.1で書いた方法ですると、条件付き書式ができますので、やってみてください。

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

 回答番号:ANo.7です。 ●Excel2007よりも前のバージョン (1)の条件付き書式を設定する場合 条件付き書式を設定するセルを選択   ↓ メニューの[書式]をクリック   ↓ 現れた選択肢の中にある[条件付き書式]をクリック   ↓ 現れた「条件付き書式の設定」ウィンドウの左端の欄をクリック   ↓ 現れた選択肢の中にある「セルの値が」をクリック   ↓ 「条件付き書式の設定」ウィンドウの左から2番目の欄をクリックし、現れた選択肢の中にある[次の値の間]をクリック   ↓ 「条件付き書式の設定」ウィンドウの左から3番目の欄に 1 と入力   ↓ 「条件付き書式の設定」ウィンドウの右端の欄に 99 と入力   ↓ 「条件付き書式の設定」ウィンドウの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ウィンドウの[パターン]タグをクリック   ↓ 好きな色の四角形をクリック   ↓ 「セルの書式設定」ウィンドウの[OK]ボタンをクリック   ↓ 「条件付き書式の設定」ウィンドウの[OK]ボタンをクリック (2)の条件付き書式を設定する場合 条件付き書式を設定するセルを選択   ↓ メニューの[書式]をクリック   ↓ 現れた選択肢の中にある[条件付き書式]をクリック   ↓ 現れた「条件付き書式の設定」ウィンドウの左端の欄をクリック   ↓ 現れた選択肢の中にある「セルの値が」をクリック   ↓ 「条件付き書式の設定」ウィンドウの左から2番目の欄をクリックし、現れた選択肢の中にある[次の値に等しくない]をクリック   ↓ 「条件付き書式の設定」ウィンドウの右端の欄に ="" と入力   ↓ 「条件付き書式の設定」ウィンドウの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ウィンドウの[パターン]タグをクリック   ↓ 好きな色の四角形をクリック   ↓ 「セルの書式設定」ウィンドウの[OK]ボタンをクリック   ↓ 「条件付き書式の設定」ウィンドウの[OK]ボタンをクリック

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

>その設定をすることにより、条件付き書式が実行されません。  そんな筈はありません、別々に設定する事が可能な筈です。  数字の表示を3桁表示する設定は、以下の通りです。 表示を行うセルにカーソルを合わせてマウスを右クリック   ↓ 現れた選択肢の中から、[セルの書式設定]を選択してクリック   ↓ 現れた[セルの書式設定]ウィンドウの[表示形式]タグをクリック   ↓ [分類]欄の中にある[ユーザー定義]を選択してクリック   ↓ [種類]欄に 000 と入力   ↓ [セルの書式設定]ウィンドウの[OK]ボタンをクリック  次に、条件付き書式の設定方法ですが、Excel2007以降のバージョンと、Excel2007よりも前のバージョンでは、操作方法が少し異なります。 ●Excel2007以降のバージョン (1)の条件付き書式を設定する場合 条件付き書式を設定するセルを選択   ↓ [ホーム]タブをクリック   ↓ 現れた選択肢の中にある[スタイル]グループをクリック   ↓ 現れた選択肢の中にある[条件付き書式]をクリック   ↓ 現れた選択肢の中にある[新しいルール]をクリック   ↓ 現れた選択肢の中にある[セルの強調表示ルール]をクリック   ↓ 現れた選択肢の中にある[指定の範囲内]をクリック   ↓ 現れた「指定の範囲内」ウィンドウの左端の欄に 1 と入力   ↓ 「指定の範囲内」ウィンドウの左から2番目の欄に 99 と入力   ↓ 「指定の範囲内」ウィンドウの右端にある「書式」欄をクリック   ↓ 現れた選択肢の中から、好みの書式を選択してクリック   ↓ 「指定の範囲内」ウィンドウの[OK]ボタンをクリック (2)の条件付き書式を設定する場合 条件付き書式を設定するセルを選択   ↓ [ホーム]タブをクリック   ↓ 現れた選択肢の中にある[スタイル]グループをクリック   ↓ 現れた選択肢の中にある[条件付き書式]をクリック   ↓ 現れた選択肢の中にある[新しいルール]をクリック   ↓ 現れた選択肢の中にある[セルの強調表示ルール]をクリック   ↓ 現れた選択肢の中にある[その他のルール]をクリック   ↓ 現れた「新しい書式ルール」ウィンドウの「ルールの種類を選択してください」欄の中にある[指定の値を含むセルだけを書式設定]をクリック   ↓ 「次のセルのみを書式設定」と記されている箇所の左端の欄をクリックし、現れた選択肢の中にある[セルの値]をクリック   ↓ 「次のセルのみを書式設定」と記されている箇所の左から2番目の欄をクリックし、現れた選択肢の中にある[次の値に等しくない]をクリック   ↓ 「次のセルのみを書式設定」と記されている箇所の右端の欄をクリックし、 ="" と入力   ↓ 「新しい書式ルール」ウィンドウの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ウィンドウの[塗りつぶし]タグをクリック   ↓ 好きな色の四角形をクリック   ↓ 「セルの書式設定」ウィンドウの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ウィンドウの[OK]ボタンをクリック ※そろそろ、このサイトの回答欄の入力文字数制限を超えそうなので、Excel2007よりも前のバージョンにおける条件付き書式設定の設定方法に関しては、次の回答で述べさせて頂きます。

  • Randomize
  • ベストアンサー率70% (38/54)
回答No.6

訂正です。空白セルの条件を忘れてました。下の式に変更してください。 =IF(OR(LEN(A1)=0,ISERROR(VALUE(A1))),LEN(A1)>0,AND(VALUE(A1)>0,VALUE(A1)<=99)) あとは0~99から1~99の範囲の修正もしています。空白文字は数字のゼロとして変換処理されてしまうこともあるので、LEN関数を用いて中の文字の数をカウントするとうまく回避できます。

  • Randomize
  • ベストアンサー率70% (38/54)
回答No.5

A1のセルにこの条件付き書式を設定する場合は、条件付き書式に下の式を指定してください。 =IF(ISERROR(VALUE(A1)),TRUE,AND(VALUE(A1)>=0,VALUE(A1)<=99)) 文字列な数字を数字に変換するため、Value関数を使用します。 ただし、文字列の場合は#VALUE!エラーになるのでIF関数とISERROR関数で場合分けをしています。

  • mar00
  • ベストアンサー率36% (158/430)
回答No.4

書式設定 ユーザー定義で000;@に設定 条件付書式 セルの値が次の値に等しくないで""に設定 で出来ると思います。

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

こんばんは! 今条件付書式で色々試してみましたが、空白セルにすべて色がついてしまいましたので VBAでの一例です。セルの色は「赤」にしています。 (条件付書式で対処できるのであれば無視してください。) 画面左下にある操作したいSheet見出し上で右クリック → コードの表示 → VBE画面が出ますので ↓のコードをコピー&ペーストしてデータを入力してみてください。 とりあえずSheetすべてを対象としています(範囲指定はしていません) Private Sub Worksheet_Change(ByVal Target As Range) 'この行から Dim c As Range '範囲が決まっていればここで範囲指定ができます。 For Each c In ActiveSheet.UsedRange c.Interior.ColorIndex = xlNone If IsNumeric(c) Then If c > 0 And c < 100 Then c.Interior.ColorIndex = 3 '←色は好みの色に変更してください。 End If Else c.Interior.ColorIndex = 3 '←こちらの色も適宜変更 End If Next c End Sub 'この行まで 尚、条件付書式で色がついているセルは変化しません。 他に良い方法があればごめんなさいね。m(__)m

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

ご相談の条件が「あれもこれも」になっているので,質問している側も何を聞きたいのか曖昧で回答する側もまた困るご質問内容です。 >001~099 方法1) セルの表示形式をユーザー定義で 000 と設定しておき,入力は1や2や99として,条件付き書式は1から99の間で設定します。 方法2) セルの表示形式を文字列にしておき, 入力は001から099として,条件付き書式は セルの値が 次の値の間 ="001" と ="099" と記入しておきます。 >数字ではなく文字を入力したときも どんな文字を記入したら反応させたいのか,また逆に「どんな記入内容の時は反応しないようにしたい」のか,具体的な事例を正しく挙げて,もう一度ご相談を投稿し直してください。「例えば」じゃなく,具体的に実際にあなたがやりたいことをキチンと説明してみてください。 それまでのつなぎとして, 方法3) A列を列選択する 条件付き書式を開始する Excel2003までの場合: セルの値が → 数式が に変更して 右の空欄に =AND(0<=A1-1,A1-99<=0) と設定し,書式を取り付けて「数値」または「文字列」を記入する

  • mate0128
  • ベストアンサー率30% (31/102)
回答No.1

もし、数字を入力して、数字と判別されるようにしたかったら、次のようにします。 [セルの書式設定]ダイアログボックスで[表示形式]を[ユーザー設定]で[000]と入力します。 それで、1と入力しても001と表示されます。 それから、条件付書式の設定方法です。 (1)数字→[セルの値が][次の値の間]、[1]~[999]と入力し、設定したい書式を選びます。 (2)文字→[セルの値が][次の値に等しくない]、[""](ダブルクォーテーション2コ)を入れます。そして、設定したい書式を選びます。 (2)の意味は、空白でない場合、です。でも、数字を1~999までしか入れない場合は、表示形式を文字列にしておいて、2の設定のみをしておいてもいいです。

関連するQ&A