• ベストアンサー

エクセルVBAでセルの色を取得できますか?

エクセルVBAについて教えてください。 セルの色のカラーコードを取得とかってできますでしょうか? 「#000000」みたいに。

noname#23059
noname#23059

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

  • ベストアンサー
  • jazzkazz
  • ベストアンサー率37% (114/308)
回答No.1

Range("A1").Interior.Color = &h0000FF と言った具合に設定が可能なので、この.colorの内容を取得すればできます。 ちなみに16進数で取得したい場合は、 Hex(Range("A1").Interior.Color) で上記例であれば、&h0000FFが返されます。

noname#23059
質問者

お礼

できました! ありがとうございます!

関連するQ&A

  • Excel VBA で色付きのセルの値を取得する

    ExcelのVBAマクロで、For ~ Then構文で複数のセルを参照していき、 色付きのセル(塗りなしのセル)に入力されている値のみを取得する方法を教えてください。 Excel2007を使用しています。

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

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

  • エクセル VBA ある条件でセルに色をつけたいのですが、

    エクセル VBA ある条件でセルに色をつけたいのですが、 例えば、A2からA50に文字列が入っていて、ある処理を終えると、空白を除くセルに薄い水色(33)をつけます。ここまでは、VBAで作成できました。 次に、空白を除くセルが、すべて薄い水色になったら、A1を薄い黄(36)にしたいのです。 教えてください。よろしくお願いします。

  • Excelでのセル色のカウントについて

    Excelで、セルの色を取得するような事は出来ますか? ある色だけをカウントしたいのですが・・。 CELL関数の"color"は何か違うような気がします。

  • エクセルVBAセルの色

    前回の作成の作業スケジュールで、作業時間をセルの色で塗りました。 そこで、空白の時間帯を非表示にしたいと思います。 エクセルVBAにて、セルの色が空白ならその列を非表示にすることは可能でしょうか。 EntireColumn.Hidden = True あたりで表現できないでしょうか。 よろしくお願いします。

  • VBA セル色取得

    現在車の配車用のエクセルを作っているのですが、A車、B車、C車が何時から誰が使用していたかを管理したくて、セルの色も一緒に表の中でかえたら見やすいかなと思っております。 そこで質問ですが以下の関数は難しいと思いますので、以下の形式で色を一気に取得できるコードを教えてください。 1.行は決まっておりますがどの時間帯になるかは不明 2.A車は2hなので2列、B車は3hなので3列の色を変更 3.A、B、Cそれぞれセルの色を変えたい。 書いていてつかみどころがなくなってしまいましたが、if~を使って任意のセルからrangeで色が指定できるコードを教えてくださればあとは何とかします。 よろしくお願いいたします。

  • エクセルVBAでセル選択

    エクセル2000でリストを作成し、VBAで編集しようとしています。 A列に入力されているコードの先頭に「’」をつけて文字列とするための関数をB2のセルからA列のデータが入力されている最後のセルの隣までコピーしたいと思っています。 A列の最終セルを取得するVBAは分かったのですが、その値をB列の選択範囲として使用する方法がわかりません。 エクセルVBAは全くの初心者です。 どなたか教えてください!

  • Excel VBA セルの色の取得について

    例えば sheet1 セルC11 のセルの色を取得できますか?

  • エクセルVBAで関数が入った空白セルの取得

    エクセルVBAで下記のようなセルの参照をしたいのですが、よろしくお願いします。(エクセル2002です)   A  B  C  D  E  F 1 78 80 セル(A1)(B1)には値も関数も入れられています。 セル(C1)(D1)(E1)には値は入っていませんが、ワークシート関数が組み込まれており空白となっています。(関数の""にて空白) セル(F1)には何も入力されていません。 今回はセル(B1)の80の値を取得できるようにVBAで下記のようにコードを組みました。 Range("F1").End(elToLeft).Activate そうすると、セル(E1)に関数があるために(?)(E1)がアクティブな状態となります。 関数が入力されていても空白として(B1)をアクティブな状態にするために良い方法はありますでしょうか? 誠に申し訳ございませんが、よろしくお願いします。

  • セルが何行なのかをVBAで取得したい

    セルが何行なのかをVBAで取得したいのですが どういうコードにすればいいですか? 例えば、A1セルに a b c と入ってる場合、3行ですが それをVBAで取得するにはどうすればいいですか? Sub test() Dim r As Range Set r = Cells(1, 1) If r.Value Like "*" & Chr(10) & "*" Then MsgBox "改行があります" End If End Sub というコードで改行が有ることは取得できたのですが 何行かまでは取得する方法がわかりません。