- ベストアンサー
旧エクセルの色指定
旧エクセルVBA (2003以前)で ActiveCell.Interior.Color = 245678985 の様に直接色を指定したらどうなりますか。 (1)エラーになる。 (2)無視される。 (3)色が付く この場合、ColorIndexに無い色だったらどうなりますか。 ご存知の方、お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Excel2002で試しました。 結果は (3)色が付く ActiveCell.Interior.Color = 245678985 ちなみについた色を取得すると Debug.Print ActiveCell.Interior.Color '⇒ 9868950 となりました。
その他の回答 (2)
- watabe007
- ベストアンサー率62% (476/760)
回答No.3
- 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)ですが
質問者
お礼
たびたびすみません。説明不足でした。 32768は&H008000&で、ColorIndex = 10 暗い緑です。 ColorIndexにある色なら、 vbBlack、vbWhite、vbRed、vbGreen、vbBlue、vbYellow、vbMagenta、vbCyan 以外でも大丈夫か知りたかったのです。
お礼
ありがとうございます。 手元に旧エクセルがないので、動くかどうか気になりました。 245678985 は、適当にキーをたたいて作った数字です。 16進でEA4C389 ありえません。もっと考えて数字を作るべきでした。 この場合、A4C389、10進で10797961になるようです。 9868950 だと、ColorIndexで48、10797961に近い色になるみたいですね。
補足
ActiveCell.Interior.Color = vbRed や ActiveCell.Interior.Color = 32768 など、ColorIndexにある色だと、正しい色になりますか?