• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCELのセルに入力した数字より背景色の塗りつぶしを行いたいのですが)

EXCELのセルに入力した数字より背景色の塗りつぶし方法

このQ&Aのポイント
  • EXCELのセルに入力した数字に応じて背景色を塗りつぶす方法について教えてください。
  • EXCELの表で数値に合わせて自動で背景色を塗りつぶしたいですが、条件付き書式の制限で困っています。VBAやマクロを使わずに実現する方法を教えてください。
  • EXCELのセルに1から15の数字を入力し、それぞれの数字に合わせて背景色を塗りつぶす方法を教えてください。VBAやマクロを使わずに実現したいです。

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

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

補足のご質問に気づかず回答が遅くなりました。ごめんなさい。 >色をカスタマイズしたい 今のマクロで色を塗っているのは h.interior.colorindex = h.value + 2 の一行です。つまりセルに記入した値に応じて1を記入したら3番の色,2を記入した4番の色という具合です。 何番が何色なのかは,たとえば下記の参考URLの「[色n] でn(1~56)に対応した色見本」のところの説明などを見て,何色を使いたいならそれは10番だなとか調べてください。 で。ご自分で一つずつ「カスタマイズ」したいのでしたら,そのようにマクロを書いてください。 セルに記入した値が1だったら色番号6にしたいとか,セルに記入した値が2なら3番の色にしようとかです。 マクロの書き方は色々ありますがそれらは今回の回答の範疇ではないので,シンプルにたとえば次のようにします。 変更前:  if h = "" then    h.interior.colorindex = xlnone  else    h.interior.colorindex = h.value + 2  end if 変更後:  if h.value = 1 then   ’1=黄色    h.interior.colorindex = 6  elseif h.value = 2 then   ’2=赤    h.interior.colorindex = 3  ’以下同文で必要なだけ追記してください。知識はなくてもマネはしてみてください。  elseif h.value = 15 then    h.interior.colorindex = 4  else    h.interior.colorindex = xlnone  end if #こちらの質問室は,こういった具合に追加の質問が寄せられていることに気づきにくい場合がある欠点があります。  その意味でも,今回のように追加で聞きたいことが出てきたら,出来るだけ元のご質問はそれはそれで一回閉じて,新しいご相談として「ここまで教わったが,今度は新たにこうしたくなったらどうすればいいか」と新しいご質問で投稿し直すようにしてください。それを見たまた別のお詳しい方が,即座に良いアドバイスを回答してくださいます。

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/Excel/user_set.htm

その他の回答 (1)

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

>数字を入れ、それぞれ数字に合わせ自動で背景色を塗りつぶすことを行いたい その場合,その数字が何個有るかは全く無関係に,数字が何だから何色に塗るというだけのお話になります。 手順: ツールメニューのマクロのセキュリティを中にしてエクセルを再起動する ブックを開く シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range)  dim h as range  on error resume next  ’どこのセル範囲に色を塗りたいのか次の行で調整する  set target = application.intersect(target, range("B2:D11"))  if target is nothing then exit sub  for each h in target   if h = "" then    h.interior.colorindex = xlnone   else    h.interior.colorindex = h.value + 2   end if  next end sub ファイルメニューから終了してエクセルに戻る マクロに指定した範囲(サンプルではB2:D11の範囲)に数字を記入する。 なお, >行に数字を入れ、数字にあわせ背景色をつけたい ご相談に書かれたように「数字を記入する」のではなく,実はたとえば「数式を入れて計算させていました・他のセルの値を参照して表示させていました」のような場合は,このマクロは使えません。

beatclap
質問者

補足

ありがとうございました。 数値入力後、背景色が変更されました。 求めていた回答でした。 また、設定の仕方まで丁寧に教えていただき、大変感謝しています。 後一点質問させていただきたいのですが、色のカスタマイズを行いたいと考えています。 1=黄色 2=赤 等自分で色を設定したい場合にはどこをどのように変更すればよいのでしょうか? お手数お掛けしますが、よろしくお願いします。

関連するQ&A