• ベストアンサー

色の取得について

例えば、セルA1でセルの書式設定で赤色を設定したときに、 その色情報(ColorIndex = 3)を取得するプログラムは可能でしょうか?

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

  • ベストアンサー
  • masa_019
  • ベストアンサー率61% (121/197)
回答No.1

こんにちは。 セルA1の背景色を赤に設定する時は Range("A1").Interior.ColorIndex=3 のようにしますよね。 object.property=○○○ の形で設定できるプロパティは、たいていの場合 =object.property とするとその設定値を取得できます。 ですから、 X=Range("A1").Interior.ColorIndex MsgBox X とすると、3が表示されます。 (変数Xに受けないで、直接 MsgBox Range("A1").Interior.ColorIndex とすることも出来ます。)

piopao
質問者

お礼

回答どうもありがとうございます。 解決することができました。 >object.property=○○○ >の形で設定できるプロパティは、たいていの場合 >=object.property >とするとその設定値を取得できます。 とても勉強になりました。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルVBAで条件付書式の色を取得

    セルに条件付書式で書式設定してあります。 A1は「値」100以下 A2は「値」500以下 A3は「値」1~10の間 B1は「数式」で=B1<A1 以下さまざまな数式があります。 条件に一致すると、セルの文字が「赤」になります。 このとき、 Private Sub Worksheet_SelectionChange(ByVal Target As Range) MsgBox Target.Font.ColorIndex End Sub を実行しても、ColorIndexは、赤の「3」ではなく「-4105」と表示されます。 「-4105」は何もフォントの色を指定してないセルでも同じく表示されます。 質問1.条件付書式で、条件が一致して表示されたフォントの色は取得できないのでしょうか? 質問2.-4105とは何でしょうか?

  • EXCEL2007セルの色を数式で取得したい

    EXCEL2007セルの色を数式で取得したい EXCEL2007で条件付き書式を使って現在使って特定の値が入っているセルを 条件付き書式を使って背景を赤色を変えるというシートを作成しました。 さらに、特定のセルをダブルクリックすると書式を水色に変わるという処理 をVBAで実現したのですが、既に条件付き書式によって赤くなっているセルの 背景色を水色に変えることができません。 つまり、書式設定した背景色が条件付き書式の背景色につぶされてしまいます。 書式設定した背景色(水色)の方を優先させたいので、条件付き書式の条件に セルの書式に背景色が設定されているときには条件外とするようにしたいのですが。 どうやって、数式で書式設定した背景色を取得できますか? もしくは、他の方法で実現できるアイデアがありましたら、紹介してください。 どうぞ、よろしくお願いいたします。

  • perlとOLEでのExcelのフォント色を取得

    お世話になります。 Perl の OLEを使用して、エクセルの解析を行なっています。 そこで、エクセルの1つのセルに入っている文字の赤色の部分だけを取得したいと思います。 、 例えば、そのセルには [ わたしは チョコレート が好きです ] と書いてあり、 「チョコレート」が赤、その他は黒で書かれています。 それらのようなセルがA列に10行あり、 赤い部分の文字だけPerlのOLEで取得したいのですが、うまくいきません。 試しに ColorIndex を使用してみたのですが、取得できませんでした。 どなたかご存知の方がいらっしゃいましたら、方法をご教授いただけませんでしょうか。 よろしくお願いいたします。

  • セル色を取得するユーザー関数

    セル色を取得するユーザー定義関数として、 Function CellColor(objCell As Range) As Integer  Application.Volatile  CellColor = objCell.Interior.ColorIndex End Function 上記のコードを標準モジュールに貼り付け、例えばB2セルに「=CellColor(A2)」という計算式を入力すると、B2セルにA2セルの塗りつぶし色のColorIndex値が表示されるようになります。 これをB2セルに例えば「=CellColor()」というように入力すれば B2セルにB2セルの塗りつぶし色のColorIndex値が表示されるようにするには、 どのようなユーザー関数を作ればよいでしょうか? よろしくお願いします。

  • エクセルで土・日のセルに幅広く色をつけたい

    エクセルで予定表を作成しています。A列に日付・BからH列まで項目を設けています。(A列は、33行目まで日付が入力されています) A列に条件付書式で、条件付書式の設定で条件(1)数式が=WEEKDAY(A33)=1  パターン  色  ブルー  フォント  赤 A列に条件付書式で、条件付書式の設定で条件(2)数式が=WEEKDAY(A33)=7  パターン  色  グリーン フォント  赤 の設定を行いました。 A列の 土・日のフォントが赤に、セルの色がブルー・グリーンになるのですがBからH列はセルに色がつきません。 A33:H33  までの設定にするとセルの色がグレーになります。 AからHまでセルに同じ色を表示する設定はあるのでしょうか。

  • エクセルのセルの色について

    エクセル2002を使用しているのですが、なんだか変です。 セルを赤色に塗りたいのですが、セルの書式設定→色を見ると 以前赤色があったところが灰色に変わっていて赤色を塗れません。 設定を元に戻したい(変えたい)のですが、どこからやればよろしいでしょうか。宜しくお願いします。

  • Excel VBA セルの色の取得は可能?

    VBAにて、お世話になっています。 指定したセルの色が何色か取得は可能ですか? 例えばsheet1のC11の ColorIndex=○○ ○○ は 何番かわかりますか?

  • Excel VBA 条件付書式の条件満たすセル取得

    Excel2010のVBAで条件付書式の条件を満たすセルの番地を取得したい 具体的には、 Excel2010のあるシートのあるセル範囲(例えばA1~XFD1048576)に 条件付き書式が付けてあって、 (例えば、数式の条件が満たされたら背景色を赤色にするなど) この条件を満たすセルに指定した書式が付けられて表示されています。 この状態で、VBAで、この条件を満たしたセルの番地を、 順番に取得したいのですが、どのように記述すればよいでしょうか。 【追記】 数式をすべてのセルに入れて検出する方法や セルをひとつずつ数式に当てはめてみていく方法は、 セルが膨大なため容量的・時間的にNGです。 このため、条件付き書式で回避しています。 条件付き書式の判定結果である書式(この場合でしたら背景色が赤色) で判断する必要があります。(書式は背景色が赤色でなくてもいいです) よく分かりませんが、検索の中の書式で指定しても、 この条件付き書式の判定結果の書式はヒットしませんでした。

  • セル範囲にある文字を入力されたら、別のセルの色が付く様にしたいですが。

    A10からA20 までの表の中に終了や返却などと文字を入力されると A1のセルが赤色が付くようにしたいのですが、 調べてやってみましたがうまくいきません。 A1を選択して条件付き書式の「数式を使用して、書式設定するセルを決定」で   =$A$10:$A$20="終了" としたのですがA10を入力した時しか色が変わりません。 調べてみてたのですが、どうにも答えが見つけられません。 どなたか教えていただけると助かります。 マクロは理解しきれていないので、書式設定で何とかしたいと考えています。

  • 色の付いているセルを探す。(excel)

    range("a1:a20")の中で、色(赤)が付いているセルを探すのに、 findは使えませんか。 マニュアルのサンプルでは、whatのところは文字列の指定しか見つかりませんでした。 「Interior.ColorIndex = 3」のように使いたいのですが。 宜しくお願いします。