• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定の文字の時にセルの色を塗り替えたい)

特定の文字の時にセルの色を塗り替えたい

このQ&Aのポイント
  • エクセルで図柄を作る際に、特定の文字の時にセルの色を変えたいです。条件付けの制限でうまくいかないので他の方法を探しています。
  • 条件付けで色を変えることができるエクセルの制限を超えたいため、VBAを使用して特定のセルの色を変えたいです。
  • 希望としては、特定のセルを一度で色を変えることができる方法や、色をRGBなどで変える方法を教えてほしいです。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

手順:添付図 シート2のA列に、何と記入したらどのように色塗りしたいのか、実際のサンプルを作成する シート1に戻る シート1のシート名タブを右クリック、コードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range)  dim h as range  on error resume next  for each h in target  h.interior.colorindex = xlnone  h.interior.colorindex = worksheets("Sheet2").range("A:A").find(what:=h.value,lookin:=xlvalues,lookat:=xlwhole).interior.colorindex  next end sub ファイルメニューから終了してエクセルに戻る シート1に記入する。 #参考 1セルずつ記入しても、いくつかのセルにまとめて記入したり削除したりコピー貼り付けても構いません。 まずまっさらのエクセルに実際に作成し、ご自分の手を色々動かしてください。 #補足 既にシート1に記入済みの網目に後から色を付ける手順: (シート2の色塗りを変更した場合に反映する方法も同じ) シート2に色塗りサンプルを作成する シート1にマクロを登録する シート1に記入済みの内容をコピーする その場で上から重ねて貼り付ける #参考 エクセル2007以降を使うと、条件付き書式で3色の制約は無くなって無制限に色数を増やせるようになります。

kaomeu
質問者

お礼

詳しく、わかりやすくご説明頂き、ありがとうございます。 早速、試した所、sheet2を設定した後、色は変わらなかったのですが、再度sheet1のセルに「A」を入力したら無事に色が変わりました。 その後、試しにAの色を『臙脂色』→『パステルイエロー』にsheet2の方で変更して、 sheet1の色が変更するか確認したところ、sheet1の色は変わらずでしたが 再度sheet1のセルに「A」を入力しなおすと、パステルイエローに変わりましたが、 これだと、毎回色を変える毎に文字を入植しなおさなくてはならず、量が多いので大変になります。 できれば、設定次第で色を変えられる方法をご存知であれば、お教え頂けますよう、お願い申上げます。 追伸 エクセル2007以降は条件付が無制限というのもお教え頂きありがとうございます。 今回質問の前に初めて知ったのですが、高価なソフトなので、なかなかすぐには購入できず、手持ちの物で何とかならないかと思っております。

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

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

ん? >毎回色を変える毎に文字を入植しなおさなくてはならず、量が多いので大変になります。 わざわざそんなメンドクサイ事をしなくても、そういう状況についても最初に書いておきましたよ。 回答を読んでいないのですね。失礼な話だと思いませんか? 再掲: 既にシート1に記入済みの網目に後から色を付ける手順: (シート2の色塗りを変更した場合に反映する方法も同じ) シート2に色塗りサンプルを作成する シート1にマクロを登録する シート1に記入済みの内容をコピーする その場で上から重ねて貼り付ける 再掲: まっさらのエクセルに実際に作成し、ご自分の手を色々動かしてください。 >設定次第で色を変えられる方法をご存知であれば、お教え頂けますよう、お願い申上げます。 言葉が足りてませんが、「色を塗り替えたら即座に反映」と言いたのでしょうね。 そういう方法はありません。(あったら最初からそういう風にお話ししてますよ。) ちなみに。 シート2の色を塗り替えた後、イチイチマクロボタンをポチッとすればシート1に反映するようなマクロを作る事も、もちろん出来ます。私の回答とは違うやり方なのでフォローはしませんが、興味があるようならマクロも勉強してみて下さい。 >早速、試した所… エクセル2003では元から「条件付き書式では3色しか塗れない」のを、無理矢理マクロにやらせているのですから。 手順通りにやらないと、当然上手くいきません。勝手なやり方をしていて「思い通りにならない」と言われても、もちろんダメです。 思い通りにやりたいなら、より高性能な、最新の2007以降のソフトをご利用ください。 諦めて出来る方法でやるのか、やりたいように出来るよう投資するか。です。

kaomeu
質問者

お礼

ご教示ありがとうございます。 再度、試した結果、コピーペーストで上手く色を変更することができました。 貼り付けの方法も試したつもりでしたが、やり方が間違っていたようです。 丁寧にお教えくださっていたのに、理解が至らず本当に失礼いたしました。 希望の操作を無事にすることができましたので、こちらで解決とさせて頂きます。 このたびは、本当にありがとうございました。 取り急ぎ、お礼までですが失礼いたします。

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

関連するQ&A

  • Excel セル内の特定の文字だけ自動で色を変えたい

    3月13日(土) と一つのセルにと入れた場合、土曜のときは「土」だけ青、日曜のときは「日」だけ赤というような設定はできますか? 条件書式だとセル内のすべての文字の色が変わってしまいますよね。 VBAを使わず、条件書式のような設定だけで行う方法はないでしょうか? Excelのバージョンは2003と2007で考えています。

  • 【Excelの値が入っていないセルだけセルに色を付

    【Excelの値が入っていないセルだけセルに色を付ける方法を教えてください】 また値が入っているセルだけ色付けする方法も合わせて教えてください。

  • エクセルでセルに色をつける

     エクセル2003を使用しています。 数値をランク付けしてセルに色をつけたいのですがランクが1から6まであり条件付書式を活用しようと思ったら3つの条件までみたいで困っております。1から6まですべて違う色のセルにしたいのですが、なにか、いい方法はないでしょうか?

  • エクセルでセルの色を点滅させる方法について

    エクセル2013で作成した表の数値をある条件の元でセルの背景の色を点滅させる方法を教えてください。 条件  下記条件の元でカーソルの背景の色を点滅させる。     データ範囲は C4~F12     VBAでの使用でよいです。 空白は無色 0~99までは緑の点滅 100~199までは青の点滅 200~299までは黄色の点滅 300以上は赤の点滅 合計の欄は点滅対象外とする。 ※色付けは条件付き書式設定による色付けとフォントの塗りつぶしと2通りあります。 方法が違うなら別々に教えてください。

  • Excelでセルの色づけを自動に行いたいです。

    Excelでセルの色づけを自動に行いたいです。 入力した数値と同じ数のセルに、自動で色をつける事は可能でしょうか? 例えば、A1のセルに「5」と入力すると、隣のセルB1~F1までの5つのセルが 塗りつぶされるというようなことをしたいと思っています。 条件付書式、またはVBAで方法があれば教えて下さい。

  • 特定の色がついているセルの削除

    結構、技術がいることかもしれないので 素人でできることか分かりませんが相談させてください。 エクセルで、特定の色がついたセルを行ごと削除したいです。 VBAじゃないとできないんでしょうか? せいぜい、エクセルでマクロで簡単なことをするくらいまでの レベルの人間ですが、比較的、簡単にできる方法が あれば教えてください。

  • 条件付き書式設定でセルに色をつけて点滅させる

    条件付き書式設定で最小値、最大値のセルに色付けし、色をつけたセルを点滅させる方法は無いのでしょうか。 バージョン エクセル2013です。 最小値は黄色 最大値に緑の色を付けています。

  • 色のついたセルと文字を両方数えられるVBA

    VBAの初心者です。 エクセルで文字の色でカウントする為に以下のVBAをこちらで教えていただきました。 順調に快適にエクセルを使えていたたのですが今回同じエクセル内で 文字ではなくセルに色付けしたものもカウントしなければならなくなりました。 以下のVBAがあるからかよく言われている4.0マクロ関数ではうまくいきません。 以下のVBAに何かを足せば一方では文字色をカウントし 一方ではセル色をカウントすると言う事は可能でしょうか? どなたか力を貸してください Function CCount(Rng As Range, idx) Dim R As Range Dim Cnt As Long Application.Volatile For Each R In Rng     If R.Font.ColorIndex = idx Then Cnt = Cnt + 1 Next R CCount = Cnt End Function

  • セルに色を付ける

    たくさんの入力項目のある報告書がありまして、たまに入力漏れをしてしまいます。 漏れを無くしたいので、入力前の空白のセルには色づけされていて、文字や数値を入力するとセルの色が消えるようにしたいのです。 条件付きの書式設定でできるのかなと思い挑戦しましたが、「セルの値が次に等しい」+「条件=空白(何も入れない)」にすると条件が設定されていない事になって設定が出来ません。 何かいい方法はありませんでしょうか? 宜しくお願いします。

  • 同じセルの中の特定の曜日だけ色づけ

    こんばんは エクセル2003で、ひとつのセルに2008年8月5日(火)の形式で一ヶ月の予定表を作ってあります。 この中で、(土)と(日)だけのセルを色づけするようなことは可能でしょうか? 条件付書式でやろうとしましたが、うまく設定できませんでした。 ひとつずつ、セルに色を設定をするか日にちと曜日を別のセルにするしかないでしょうか? 条件付書式でなくても良いのですが、出来るだけ簡単な方法で出来たらありがたいです。 よろしく、お願いします。

専門家に質問してみよう