- ベストアンサー
VBA セルの色
エクセルのシート上にボタンを一つ用意し ボタンを押せば (B2:C2)のセルから(B20:C20)のセルの色 を偶数行のセルには白色、奇数行のセルには 黄色を塗り潰したいのですが可能でしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ごく普通で、解り易いかな? と思うコード。 Private Sub CommandButton1_Click() Dim Rw As Integer For Rw = 2 To 20 With Range("B" & Rw).Resize(, 2) If Rw Mod 2 = 0 Then .Interior.ColorIndex = 2 Else .Interior.ColorIndex = 6 End If End With Next Rw End Sub
その他の回答 (2)
- papayuka
- ベストアンサー率45% (1388/3066)
こんにちは。 賢いかどうか不明ですし、白じゃなく「塗りつぶしなし」だけど。。 Private Sub CommandButton1_Click() Dim r As Range ActiveCell.Activate For Each r In ActiveSheet.Range("B2:C20") r.Interior.ColorIndex = Int(r.Row Mod 2) * 36 Next r End Sub
- taka2456
- ベストアンサー率29% (36/122)
とりあえず以下のようにすればできたのですが 他の人の意見を参考にしてください もっと賢いやりかたがあると思いますので Private Sub CommandButton1_Click() For y = 2 To 20 For x = 2 To 3 Cells(y, x).Activate amari = y Mod 2 If amari = 0 Then Selection.Interior.ColorIndex = 2 Else Selection.Interior.ColorIndex = 6 End If Next Next End Sub