質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

4回答

3255閲覧

EXCEL 条件付き書式について

yuuta0305

総合スコア32

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

0クリップ

投稿2018/05/10 14:50

編集2018/05/14 23:32

質問です。
Excelの条件付き書式を使うときに

例えば、C列のプルダウンから名前を選択時にB列を指定の色で塗りつぶしたい場合、どのように設定すべきでしょうか?

また、B列で塗りつぶしたところは、あとでその行全てを他の色で塗りつぶしたい場合に、その条件付書式が入ってるところも上書きして塗りつぶす事を可能に設定する事は可能でしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

色の判定はマクロでないとできないので、次のような感じにするとよいかと思います。

標準モジュールに以下の関数を追加。

VBA

1' セルが任意の色で塗りつぶされていればTRUE、デフォルトのままならFALSEを返す 2Function IsBackColor(c As Range) 3 IsBackColor = c.Interior.ColorIndex <> xlColorIndexNone 4End Function

B1の条件付き書式の条件を次のように設定

=AND(ISBLANK(C1)=FALSE,IsBackColor(B1)=FALSE)

投稿2018/05/11 01:49

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sazi

2018/05/11 02:02

ANDの前の(が抜けてます。
ttyp03

2018/05/11 02:04

ん?なくて大丈夫ですよ?
sazi

2018/05/11 02:05

あ、失礼しました。
yuuta0305

2018/05/11 06:15

詳細についてありがとうございます。 こちらエクセルのスプレッドシートでの適応は可能でしょうか?
ttyp03

2018/05/11 06:17

「エクセルのスプレッドシート」が何を指しているのかわかりませんが、Excelで実装可能です。 できないですか?
yuuta0305

2018/05/11 06:38

オンラインでのクラウド上でのExcelです。
yuuta0305

2018/05/11 07:00

上記VBAですが、ステートメントの前に ; がありません。(行 2、ファイル「コード」) と表示されてしまいます。
ttyp03

2018/05/11 07:01

オンラインのExcelは想定していません。 少し調べてみます。
yuuta0305

2018/05/11 07:04

ご親切にありがとうございます。
yuuta0305

2018/05/11 07:08 編集

ツールから、<> スクリプトエディタでしょうか?
ttyp03

2018/05/11 07:08

報告いただいたエラーは出ませんでした。 そもそもExcelOnlineは、マクロを含むブックを開くことはできますが、実行はできないとのことです。 また条件付き書式も数式で条件を指定することができませんでした。 実行できる環境があるのでしょうか。 もう少し調べてみます。
yuuta0305

2018/05/11 07:13

条件付き書式は、ツール > 条件付き書式 > セルの書式設定の条件 のところで、カスタム数式がそれに当たるようです。
ttyp03

2018/05/11 07:24

私が使ってるoffice365のExcelでは、無理そうでした。 そもそもツールメニューがありませんですし。 お役に立てず申し訳ありません。
dit.

2018/05/11 07:29

ExcelOnlineではなくGoogleのスプレッドシートではないですか?
ttyp03

2018/05/11 07:29

Googleのスプレッドシートっていうオチな気がするんですが、違います?
yuuta0305

2018/05/11 07:30

すみませんよく見たら、そちらでした。
ttyp03

2018/05/11 07:30

>dit.さん かぶった…w
yuuta0305

2018/05/11 09:16

![イメージ説明](2fde8f25df5cc30587c01a430808a988.png)
ttyp03

2018/05/11 09:22

ExcelではなくGoogleのスプレッドであるなら、タグを修正してください。 私の職場の環境ではGoogle系のサービスがほとんどガードされていて、これ以上は確認できません。 ごめんなさい。 新しくアップしてもらった画像も表示できないのです。 帰宅して気力があれば見てみますが期待しないでください。
yuuta0305

2018/05/11 09:26

> ttyp03 ありがとうございます。 明確なタグはないので、Googleをいれました。タグの追加希望は出しました。
guest

0

C列のプルダウンから名前を選択時にB列を指定の色で塗りつぶしたい場合、どのように設定すべきでしょうか?

C列が空白でないという条件ではどうでしょうか。
=(ISBLANK(C列)=False)

B列で塗りつぶしたところは、あとでその行全てを他の色で塗りつぶしたい場合に、その条件付書式が入ってるところも上書きして塗りつぶす事を可能に設定する事は可能でしょうか?

塗りつぶしても、条件付き書式の方が優先されるので駄目でしょう。

投稿2018/05/10 15:04

sazi

総合スコア25188

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuuta0305

2018/05/10 20:14 編集

回答ありがとうございます。 前者については出来そうです。 後者については、恐らく条件付き書式に優先度を設けるなどして複数の条件を設定させるしかなさそうですね…。
guest

0

ベストアンサー

Googleスプレッドシートで試してみました。
結論から言いますと、できませんでした。
Rangeオブジェクトから色を取得する関数はあるのですが、条件付き書式で色を変えると、その色を取得してしまうので、任意に設定した色と区別がつかないのです。
もしかしたら別々に取得できるのかもしれませんが、今のところ時間がなくそこまで調べ切れておりません。
とりあえず試してみた方法を掲載しておきますので、参考にしてください。

スクリプトエディタに下記の関数を追加

js

1function IsBackColor(c) { 2 return (SpreadsheetApp.getActiveSheet().getRange(c).getBackground() != '#ffffff'); 3}

B1セルの条件付き書式(カスタム数式)

=AND(ISBLANK(C1)=FALSE, IsBackColor("B1")=FALSE)

やっていることはExcel版で回答したやつを、Googleスプレッドシートに移植しただけです。
ひとつ違うのは関数にB1と渡すとセルのオブジェクトではなく、値そのものが渡ってしまうので参照方法を変更しています。
これももしかしたらオブジェクトそのものを渡せるかもしれませんが、久しぶりに触ったので思い出せませんでした。
すみません。
以上、参考まで。

投稿2018/05/12 09:03

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuuta0305

2018/05/12 11:41 編集

色々調べて頂きありがとうございます。 色々と効率化のために出来ないか質問してみましたが、どうやら一筋縄ではいかないようですね。 これ以上調べて頂くのは申し訳ないので、ここでクローズとします。ありがとうございました。^ - ^
guest

0

イメージ説明

投稿2018/05/11 09:17

yuuta0305

総合スコア32

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問