• ベストアンサー

旧エクセルの色指定

旧エクセルVBA (2003以前)で   ActiveCell.Interior.Color = 245678985 の様に直接色を指定したらどうなりますか。 (1)エラーになる。 (2)無視される。 (3)色が付く  この場合、ColorIndexに無い色だったらどうなりますか。 ご存知の方、お願いします。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

Excel2002で試しました。 結果は (3)色が付く ActiveCell.Interior.Color = 245678985 ちなみについた色を取得すると Debug.Print ActiveCell.Interior.Color '⇒ 9868950 となりました。

SI299792
質問者

お礼

ありがとうございます。 手元に旧エクセルがないので、動くかどうか気になりました。 245678985 は、適当にキーをたたいて作った数字です。 16進でEA4C389 ありえません。もっと考えて数字を作るべきでした。 この場合、A4C389、10進で10797961になるようです。 9868950 だと、ColorIndexで48、10797961に近い色になるみたいですね。

SI299792
質問者

補足

  ActiveCell.Interior.Color = vbRed や   ActiveCell.Interior.Color = 32768 など、ColorIndexにある色だと、正しい色になりますか?

その他の回答 (2)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

>vbBlack、vbWhite、vbRed、vbGreen、vbBlue、vbYellow、vbMagenta、>vbCyan >以外でも大丈夫か知りたかったのです。 Excel2002の画面のコピーです

SI299792
質問者

お礼

 ここまでしていただいたのですか。ありがとうございます。

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

>ActiveCell.Interior.Color = vbRed >ActiveCell.Interior.Color = 32768 >など、ColorIndexにある色だと、正しい色になりますか? ColorIndexにある色は正しく表示されています。 vbBlack、vbWhite、vbRed、vbGreen、vbBlue vbYellow、vbMagenta、vbCyan など定数も使えます。 vbGreenは、RGB(0, 128, 0)ではなく RGB(0, 255, 0)ですが

SI299792
質問者

お礼

たびたびすみません。説明不足でした。 32768は&H008000&で、ColorIndex = 10 暗い緑です。 ColorIndexにある色なら、 vbBlack、vbWhite、vbRed、vbGreen、vbBlue、vbYellow、vbMagenta、vbCyan 以外でも大丈夫か知りたかったのです。