• ベストアンサー

4つ以上の条件付書式設定について

エクセル2003を使っています。 セルC9からセルS100までの範囲で、6つの条件付セルを設定したいのです。  例えば、セルに        "あ"と入力されると赤色に、        "い"と入力されると緑色に "う"と入力されると黄色に "え"と入力されると青色に "お"と入力されるとグレー色に "か"と入力されると茶色に       セルの色が変わるようにしたいのです。   どなたか、よろしくお願いいたします。   

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

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

>セルC9からセルS100までの範囲で、6つの条件付セルを設定したいのです。 シート名タブを右クリックしてコードの表示を選び 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byVal Target as excel.range)  dim a1,a2  on error resume next  for each a1 in application.intersect(target, range("C9:S100")).areas  for each a2 in a1  select case a2  case "あ"   a2.interior.colorindex = 3 '赤  case "い"   a2.interior.colorindex = 4 '緑  case "う"   a2.interior.colorindex = 6 '黄  case "え"   a2.interior.colorindex = 5 '青  case "お"   a2.interior.colorindex = 15 '灰  case "か"   a2.interior.colorindex = 9 '茶  case else   a2.interior.colorindex = xlnone '無  end select  next  next end sub ファイルメニューから終了してエクセルに戻る C9:S100に何か入れる。 #2007のExcelに買い換えれば,勿論条件付き書式だけで出来ます。 さもなくば,「256列以上の列数が欲しい」などと同様に無い袖は振れず出来ない物はできませんなご質問です。

hijtxa
質問者

お礼

お礼が遅くなりましたが、ありがとうございます。 思い通りに出来上がりました。 これからもよろしくお願いいたします。

その他の回答 (1)

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

こんばんは! すでに回答は出ていますので・・・ 参考程度で目を通してください。 Sub test() Dim c As Range Range("C9:S100").Select For Each c In Selection Select Case c.Value Case "あ": c.Interior.ColorIndex = 3 '赤 Case "い": c.Interior.ColorIndex = 10 '緑 Case "う": c.Interior.ColorIndex = 6 '黄 Case "え": c.Interior.ColorIndex = 5 '青 Case "お": c.Interior.ColorIndex = 16 'グレー Case "か": c.Interior.ColorIndex = 9 '茶 End Select Next c End Sub

関連するQ&A