電子書籍の厳選無料作品が豊富!

こんにちは

調べてもよくわからないので教えてください。
VBAで、セルに色を塗ることをさせたいのですが、エクセルの「塗りつぶし」に用意されている
色を使用したいです。この番号はどうやってしらべるのでしょうか?
ちなみに使用したいのは、モスグリーンの上から二つ目、えんじ色の上から二つ目、水色の上から二つ目、オレンジ系です。

よろしくお願いいたします。

A 回答 (1件)

こんばんは!



どこか使っていないセルを好みの色で塗りつぶし、そのセルを選択したのちに↓のマクロを実行してみてください。

Sub RGB値()
Dim N As Long, R As Long, B As Long, G As Long
N = Selection.Interior.Color
B = Int(N / 65536)
G = Int((N - B * 65536) / 256)
R = N - G * 256 - B * 65536
MsgBox "(" & R & "," & G & "," & B & ")"
End Sub

Excel2007以降ではカラーインデックス番号(56色?)で対応できない色がありますので
敢えてRGB値を求める方法にしました。

メッセーボックスにRGB値が表示されますので
あとはご自身で塗りつぶしのRGB値を指定すれば
その色に塗りつぶされるはずです。

仮に選択セルを「黄色」に塗りつぶしたい場合は

Selection.Interior.Color = RGB(255, 255, 0)

といった感じになると思います。
このRGB値を求めて色を指定してみてください。m(_ _)m
    • good
    • 0
この回答へのお礼

ネットで調べて、そのようなことが書いてたのですが
理解できませんでした。
でも、tom04さんのご回答はわかりやすく
理解できました。
ありがとうございました。

お礼日時:2016/12/15 23:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!