A B C
1 豚汁 豚の角煮 カレー
2 カレーライス クリームカレー 煮
3 味噌汁 ハンバーグシチュー ライス
4 ハンバーグ 赤飯 シチュー
5 オムレツ 鯖の味噌煮
6 オムライス
7 豚汁
EXCELに上記のようにA列、B列、C列にメニューが書いてあります。
【やりたいこと2点】
(1)A列とC列を比較
上から順にC列に入っている文字がA列のいずれかに含まれて(部分一致して)いれば、
セルを赤色に色塗り。
例)C1の「カレー」はA列の「カレーライス」に部分一致していますので
『C1』のセルを赤塗り、続いてC2の「煮」はA列のいずれかにも一致していないので、そのまま。
C3の「ライス」は「カレーライス」「オムライス」に部分一致していますので
『C3』のセルを赤塗り・・・・・
というように、C列に入っている値を上から順に見て行き赤塗りorそのままというように
チェックを行いたいです。
(2)A列とB列とC列を比較
上から順にC列に入っている文字がA列、B列のどちらにも含まれていれば(部分一致)していれば、
セルを緑色に色塗り。
※(1)の作業で赤塗になった箇所は上書きで緑になってOKです。
例)C1の「カレー」はA列の「カレーライス」B列の「クリームカレー」に部分一致しているので
『C1』のセルを"赤塗り"⇒"緑塗り"に変更、続いてC2の「煮」はB列に部分一致するメニューがあるが
A列には存在しないので、セルの色はそのまま。
というように、Cの列に入っている値を上から順に見て行き緑塗りorそのままというように
チェックを行いたいです。
お手数おかけ致しますがご教示お願い出来ませんでしょうか。
どうぞよろしくお願い致します。
No.3ベストアンサー
- 回答日時:
一例です。
Sub sample()
For i = 1 To Cells(Rows.Count, "C").End(xlUp).Row
mycl = xlNone
Set a = Columns("A:A").Find(Cells(i, "C"))
If Not a Is Nothing Then
Set a = Columns("B:B").Find(Cells(i, "C"))
If Not a Is Nothing Then
mycl = 4
Else
mycl = 3
End If
End If
Cells(i, "C").Interior.ColorIndex = mycl
Next
End Sub
早速のご回答まことにありがとうございました。
無事できました。
今後、応用が利くようにとソースの理解を一生懸命頑張っておりますが・・
難しいです。。ネットで検索しながら意味を調べてゆきます。
本当にありがとうございました。
No.2
- 回答日時:
マクロで行うことのメリットはさほど無いように思いますね。
通常の条件付き書式を設定することで十分でしょう。例えばC列を選択します。C1セルがアクティブセルの状態になっています。
そこで「条件付き書式」の設定で「数式が・・・」で数式の窓には最初の条件の設定でしたら次の式を入力して「書式」で「塗りつぶし」のタブから赤色を選択してOKします。
=AND(C1<>"",COUNTIF(A:A,"*"&C1&"*")>0)
次に第2の条件ですが同じようにC列を選択して「条件付き書式」の「数式で・・」で数式の窓には次の式を入力します。
=AND(C1<>"",AND(COUNTIF(A:A,"*"&C1&"*")>0,COUNTIF(B:B,"*"&C1&"*")>0))
「書式」の塗りつぶしのタブから緑色を選択してOKします。
以上で完成です。
条件付き書式でもできるのですね。
すごく勉強になりました。
マクロだけではなく他の方法(条件付き書式)なども頭に入れながら
やらないとダメですね。
早速のご回答まことにありがとうございました。
No.1
- 回答日時:
EXCELのバージョンは何をお使いですか?
マクロでなくとも、エクセルの基本機能「条件付き書式」で充分可能だと思います
http://www2.odn.ne.jp/excel/waza/cformat.htm
http://www.eurus.dti.ne.jp/~yoneyama/Excel/jyo-s …
マクロでやるなら、これのベストアンサーを参考しては如何でしょうか?
http://oshiete.goo.ne.jp/qa/4878190.html
早速のご回答ありがとうございました。
条件付き書式のURLが2つとも飛ばず確認することができませんでしたが、
今回はマクロで頑張ってみようと思います。
マクロの参考URLを元に応用して頑張ってみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
- Excel(エクセル) countif関数について質問 4 2022/06/14 12:11
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Excel(エクセル) Excelのリストにある文字を含むセルを、複数の色で色付けしたいです 2 2022/08/11 17:39
- Excel(エクセル) EXCEL関数(数式)を教えてください 2 2022/06/08 18:32
- Excel(エクセル) Excelのマクロで、特定のセルから順番に値を取得したい 5 2022/12/06 15:34
- Excel(エクセル) エクセル関数について 2 2022/05/30 14:36
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- Visual Basic(VBA) VBAでセル同士を比較して色付け 4 2023/03/06 19:57
- Excel(エクセル) Excel2019 列と列(2列)の数値の重複を調べたい 1 2023/05/11 13:35
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
vba 2つの条件が一致したら...
-
Worksheets メソッドは失敗しま...
-
【VBA】2つのシートの値を比較...
-
VBA 何かしら文字が入っていたら
-
URLのリンク切れをマクロを使っ...
-
Cellsのかっこの中はどっちが行...
-
vbaでシートより100より大きい...
-
文字列の結合を空白行まで実行
-
セルに値が入っていた時の処理
-
空白セルをとばして転記
-
【Excel VBA】 B列に特定の文字...
-
VBAのFind関数で結合セルを検索...
-
VBAで指定範囲内の空白セルを左...
-
マクロ 最終列をコピーして最終...
-
マクロについて。S列の途中から...
-
リストボックス セルの値を取得...
-
VBAを使って検索したセルをコピ...
-
マクロ 関数を使った抽出でエラ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Cellsのかっこの中はどっちが行...
-
VBAのコードを教えてください
-
VBAを使って検索したセルをコピ...
-
B列の最終行までA列をオート...
-
エクセルvbaについて
-
vba 2つの条件が一致したら...
-
Excelで、あるセルの値に応じて...
-
VBA UserFormからの転記で
-
VBAのFind関数で結合セルを検索...
-
文字列の結合を空白行まで実行
-
IIF関数の使い方
-
VBA 何かしら文字が入っていたら
-
マクロ 最終列をコピーして最終...
-
Changeイベントでの複数セルの...
-
エクセルVBAにて =A1=B1とすれ...
-
【VBA】2つのシートの値を比較...
-
データグリッドビューの一番最...
-
VBマクロ 色の付いたセルを...
-
VBAで指定範囲内の空白セルを左...
おすすめ情報