Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6861 / 13646 ツリー ←次へ | 前へ→

【42706】プログラムミス?? だいだい 06/9/19(火) 20:57 質問[未読]
【42710】Re:プログラムミス?? りん 06/9/19(火) 21:39 回答[未読]
【42711】Re:プログラムミス?? だいだい 06/9/19(火) 21:43 お礼[未読]

【42706】プログラムミス??
質問  だいだい  - 06/9/19(火) 20:57 -

引用なし
パスワード
   全部一色で塗られてしまう・・・
どこが間違ってるかわからーーん(泣き

#############################################

曜日によって背景色を変える

#############################################

Sub InteriorColor()

Dim i As Integer 'カウント用

For i = 3 To 20

 Select Case Cells(i, "D").Value 'D列に曜日がリストしてある

  Case Is <> "SUN"
    Cells(i, "D").Interior.Color = RGB(23, 12, 132) '適当な色
    
  Case Is <> "MON"
    Cells(i, "D").Interior.Color = RGB(243, 123, 12) '適当な色
    
  Case Is <> "TUE"
    Cells(i, "D").Interior.Color = RGB(243, 12, 12) '適当な色
    
  Case Is <> "WED"
    Cells(i, "D").Interior.Color = RGB(23, 123, 132) '適当な色
      
  Case Is <> "THU"
    Cells(i, "D").Interior.Color = RGB(43, 123, 132) '適当な色
    
  Case Is <> "SUN"
    Cells(i, "D").Interior.Color = RGB(123, 123, 12) '適当な色
      
  Case Is <> "SUN"
    Cells(i, "D").Interior.Color = RGB(222, 123, 132) '適当な色
      
  Case Else
    Cells(i, "D").Interior.Color = RGB(132, 132, 243)
  
 End Select
 
Next
    
End Sub

【42710】Re:プログラムミス??
回答  りん E-MAIL  - 06/9/19(火) 21:39 -

引用なし
パスワード
   だいだい さん、こんばんわ。

>Sub InteriorColor()
>
>Dim i As Integer 'カウント用
>
>For i = 3 To 20
>
> Select Case Cells(i, "D").Value 'D列に曜日がリストしてある
この条件では"SUN"以外全部ヒット
>  Case Is <> "SUN"
>    Cells(i, "D").Interior.Color = RGB(23, 12, 132) '適当な色
この条件では"MON"以外、ただし"SUN"以外は上でヒットしているので、ここでは"SUN"のみ
>  Case Is <> "MON"
>    Cells(i, "D").Interior.Color = RGB(243, 123, 12) '適当な色
これ以下は上で全てヒットしてるので無効な分岐。   
>  Case Is <> "TUE"
>    Cells(i, "D").Interior.Color = RGB(243, 12, 12) '適当な色
(略)
>  
> End Select
> 
>Next
>    
>End Sub

あと、
RGBでセルの色を指定する方法
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=42512;id=excel
の角田さんのアドバイスにありますが、
>パレット56色以外の色の組み合わせ(R,G,B)をセルに設定しても
>56色の内のどれかで設定されます。
ということです。
ブックのパレットを変更する方法もあるので、ツリーを参考にしてみてください。


でも、とりあえず、やりたいことはこういうことですか?
Sub InteriorColor()
Dim i As Integer, ci As Integer
For i = 3 To 20
  With Cells(i, "D")
   Select Case .Value 'D列に曜日がリストしてある
     Case "SUN": ci = 38 '薄赤
     Case "MON": ci = 40 '薄橙
     Case "TUE": ci = 36 '薄黄
     Case "WED": ci = 35 '薄緑
     Case "THU": ci = 37 '薄青
     Case "FRI": ci = 39 '薄紫
     Case "SAT": ci = 15 '薄灰
     Case Else: ci = 1 '黒
   End Select
   .Interior.ColorIndex = ci
  End With
Next
End Sub
こんな感じです。

【42711】Re:プログラムミス??
お礼  だいだい  - 06/9/19(火) 21:43 -

引用なし
パスワード
   迅速なレスに感謝です

なんかSelect文をかんちしてたみたいです。

ありがとうー!

6861 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free