- ベストアンサー
フォームのコントロールのバックカラーの色を変えたい
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>2003の時は、この方法で行けました ?本当に 手元の2003でもエラーになりますよ。 そもそもAccessのカラーコードは10進数ですね。 16進数を入れようとしても、そもそも型違いでエラーです。 詳しくはわかりませんが、単純にRGBの指定で数値を作っているようではないですね。 だから、#00B7EFを10進数に変換して、「0 183 239」(実際にはスペースをつめて)と入力しても全然違う色(緑っぽい色)になりますが、そういうのを希望されているわけじゃないですよね? あくまでもRGBでの色指定のイメージなんですよね? 背景色指定のプロパティ欄の右横に「...」の色パレットを表示するボタンがありますよね? それをクリックして色指定のダイアログを表示させます。 ↓ 「色の作成」をクリックすると詳細な色設定の欄が表示されます。 ここの「赤」「緑」「青」の欄に、先の#00B7EFをそれぞれ10進に変換して入力。 ↓ 赤-0 / 緑-183 / 青-239 ですね。 これで色の追加→OKとクリックしてダイアログを閉じれば、色コードがプロパティに入力されているはずですね。 これで算出されたコードは「15709952」なんですが、これでいいかどうかはご自分で見て確認してください。 Accessをずっと使ってますが、色指定で16進数を使うことはなかったような・・・
その他の回答 (1)
- DexMachina
- ベストアンサー率73% (1287/1744)
> #00B7EFを数値に変換する方法、 最適解かはわからないのですが(汗)、VBAできる値には 以下の関数で変換できます: RGB(&H00, &HB7, &HEF) 演算結果= 15709952 【解説】 Access2003までは10進数表示でしたが、Access2007 では16進数表示になったようです。 これを、VBAのBackColorなどに使用できるようにするには 上記のようにRGB関数を使用する方法があります。 「#00B7EF」のうち、「#」の後ろ6桁が、実際の数値になり、 左から順に2桁ずつで、それぞれR(赤)、G(緑)、B(青)に あたります。 そのため、これをRGB関数のそれぞれの引数に割り当てます が、この値が16進数であることを認識させるため、それぞれの 先頭に「&H」(「H」は「16進数(Hexadecimal)」の頭文字から) をつけます。
お礼
参考になりました。ありがとうございます。
お礼
参考になりました。ありがとうございます。