|
yasuさん こんばんは
>続いて、色をつけるということをしたいのですが、
>もうちょっとかんたんにはならないでしょうか??
>
>あと、255±Range や 0±Range といった値が255を超える
>または0を下回った際には255、0にするというようにするには
>どうしたらよいでしょうか??
>
こんなことでいいですか?
Sub 色()
Dim 赤 As Long, 緑 As Long, 青 As Long
Dim aka As Long, midori As Long, ao As Long
Dim i As Integer
For i = 1 To 17
'セルA1からQ1までの数値を調べて、補正した数値を変数aka,midori,ao に格納する
Set Rng = Cells(1, i)
赤 = Rng.Value
緑 = 255 - Rng.Value
青 = 255 + Rng.Value
aka = Hosei(赤)
midori = Hosei(緑)
ao = Hosei(青)
'オートシェープを順番に1つづつ塗りつぶす。
ActiveSheet.Shapes(i).Fill.ForeColor.RGB = RGB(aka, midori, ao)
Next i
End Sub
Function Hosei(ByVal num As Long) As Long
Select Case num
Case Is >= 255
Hosei = 255
Case Is <= 0
Hosei = 0
Case Else
Hosei = num
End Select
End Function
|
|