• ベストアンサー

【再】連続する同じ数字のセルの塗り潰しがしたい。

kkkkkmの回答

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1638/2485)
回答No.3

VBAだと(冗長なコードかもしれませんが思いつくままのコードです) 実行時の画像は回答No.2と同じなので省略します。 Sub Test() Dim i As Long Dim c As Range Range("A1:Y4").Interior.ColorIndex = xlNone For Each c In Range("A1:Y4") If c.Row <> 1 And c.Column <> 1 Then If c.Value = c.Offset(-1, -1).Value _ Or c.Value = c.Offset(-1, 0).Value _ Or c.Value = c.Offset(-1, 1).Value _ Or c.Value = c.Offset(1, -1).Value _ Or c.Value = c.Offset(1, 0).Value _ Or c.Value = c.Offset(1, 1).Value _ Then c.Interior.Color = vbYellow End If ElseIf c.Row = 1 Then If c.Column <> 1 Then If c.Value = c.Offset(1, 0).Value _ Or c.Value = c.Offset(1, 1).Value _ Or c.Value = c.Offset(1, -1).Value _ Then c.Interior.Color = vbYellow End If Else If c.Value = c.Offset(1, 0).Value _ Or c.Value = c.Offset(1, 1).Value _ Then c.Interior.Color = vbYellow End If End If ElseIf c.Column = 1 Then If c.Row <> 1 Then If c.Value = c.Offset(1, 0).Value _ Or c.Value = c.Offset(1, 1).Value _ Or c.Value = c.Offset(-1, 0).Value _ Or c.Value = c.Offset(-1, 1).Value _ Then c.Interior.Color = vbYellow End If End If End If Next End Sub

sazanami0422
質問者

お礼

VBA実行して上手くいきました。 ありがとうございます。

Powered by GRATICA

関連するQ&A

  • 連続する同じ数字のセルの塗り潰しがしたい。

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がお見えでしたら回答よろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  また私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、4行×25列の中に数字が1~31まであり、重複して入っています。  この中にある数字で、同じ数字が縦・右斜め・左斜め(横は無い)のいずれかに該当すれば  その数字のセルを黄色で塗り潰す方法をVBAで実現する方法が知りたいです。   【注意事項】   ・4行×25列の中にある数字の並びは毎回異なります。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 重複数字の数に応じてセルに色をつける。

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がお見えでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  また私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、1列×25行の中に数字が1~31まであり、  重複数字を含んで昇順に並んでおり、それが4列あります。  1列毎に数字を見て以下の条件にあえばセルを塗り潰します。   2個重複⇒セルを黄色に塗り潰す。   3個重複⇒セルを青色に塗り潰す。   4個重複⇒セルを緑色に塗り潰す。   5個重複⇒セルを赤色に塗り潰す。   上記を実現する方法をVBAで実現する方法が知りたいです。   【注意事項】   ・1列×25行の中にある数字の並びは毎回異なります。   ・1列×25行の中に重複数字が無い場合があります。(例:A列)   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 複数行をまとめて縦に昇順に並び替える方法

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がお見えでしたら回答よろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  また私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、1行×25列の中に数字が1~31まであり、重複して入っています。 これが4行あります。  これをまとめて、縦に数字を昇順に並び替える方法をVBAで実現する方法が知りたいです。  (添付図はわかりやすくするためにセルに色をつけてますが、実際は無くてもOKです。   【注意事項】   ・1行×25列の中にある数字の並び毎回異なります。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 枠の外と内の数字に分けて昇順に並べる方法

    あけましておめでとうございます。 本年もよろしくお願いいたします。 このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、5列×5行の中に数字が1~31まであり、  重複数字を含んでおり、それが4つ(A,B,C,D)あります。  その中で、赤枠内と外の数字を分けて下段に  「〇外」、「〇内」として左から右へ昇順に並べます。  上記を実現する方法をVBAで実現する方法が知りたいです。   【注意事項】   ・5列×5行の中にある数字の並びは毎回異なります。   ・赤枠や、塗り潰しの青色や黄色は、説明のために付けているだけです。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 枠の左と真ん中と右の数字を分けて昇順に並べる方法

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、7列×5行の中に数字が1~37まであり、  重複数字を含んでおり、それが4つ(A,B,C,D)あります。  その中で、1列~2列、3列~5列、6列~7列と数字を分けて下段に  「〇中」、「〇左」、「〇右」として左から右へ昇順に並べます。  上記を実現する方法をVBAで実現する方法が知りたいです。   【注意事項】   ・7列×5行の中にある数字の並びは毎回異なります。   ・枠線や塗り潰しの橙色や緑色や青色は、説明のために付けているだけです。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 縦列で数字が重複していたら色分けしてセルを塗り潰す

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  また、私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】 添付図のとおり、A列~Y列の5行のセルがあります。 セルの中には数字がランダムに入っています。 A列から縦5つの数字を見たとき、 数字が重複しているならそのセルを塗り潰して、 Y列までそれを繰り返す。 最初に見つけた重複数字は「黄色」、 2つめに見つけた重複数字は「青色」に分けて塗潰す方法が知りたいです。 【注意事項】   ・A列からY列に入る数字は毎回異なります。   ・重複数字が無い列も存在します。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 検索値で枠内を検索して一致したら黄色に塗潰す。

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】  添付図のとおり、35列×6行の中に数字が1~37まであり、  重複数字を含んでおります。また、AL列とAM列は54行で、  数字が1~37まであり重複数字を含んでおります。  AL1とAM1の2つの値で、35列×6行の中を検索して一致したら  セルを黄色に塗り潰します。これを、AL列とAM列の  最終行(54行目)まで繰り返します。  上記を実現する方法をVBAで実現する方法が知りたいです。   【注意事項】   ・35列×6行の中にある数字の並びは毎回異なります。   ・枠線や塗り潰しの黄色、検索対象~、検索値~は説明の    ために付けているだけです。   ・AL列とAM列は2つで1つの値として昇順に並んでいます。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 同じ列に2個の連続数字が2個以上ある場合に塗潰す

    いつもお世話になっております。 ご存じの方がお見えでしたら回答をよろしくお願い致します。 【質問】  添付図の様にA列~E列、それぞれ20行の中に1~31までの数字が重複あり  で入っています。それぞれの列で連続する数字を見た場合、  同じ数字の並びがありそれが2個以上ある場合にセルを塗潰す方法が知りたいです。  ※1列に連続する数字が2個無い場合もありますし、最大3個ある場合もあり   ます。 【注意事項】  ・使用するエクセルは2016です。  ・セルの中の1~31までの数字は毎回ランダムに変わります。 以上、よろしくお願いします。

  • 検索値と検索対象の数字が一致の場合にセルを塗り潰す

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】 添付図のとおり、検索値の数字で検索対象の数字をチェックして、同じ数字であれば、水色で検索対象のセルを塗り潰す。  検索値:G1~K5の中に1~31までの数字が重複ありで25個入っている。  検索対象:A1~E20の中に1~31までの数字が重複ありで入っている。 上記を実現する方法をVBAで実現する方法が知りたいです。   【注意事項】   ・検索値と検索対象の数字は毎回異なります。   ・VBAで実現する方法~、と書きましたが、    同様のことが他の方法でも実現できればそれを教えて下さい。   ・使用するエクセルは2021です。 以上、よろしくお願いします。

  • 消去数字に該当する数字があれば消去して左に詰める

    このカテゴリーのエクセルの達人の方々に質問です。 どなたか回答して頂ける方がおみえでしたらよろしくお願いします。 (ちゃんとした回答ではなく、文句やクレーム等を混ぜた記載はご遠慮ください。  私の質問が気に入らない場合は無視して頂ければ結構です。) 【質問】 添付図1のとおり、A1~AI6の6行×35列の中に数字が重複して入っています。また、消去数字がAM1~BD1に入っています。 消去数字に該当する数字が検索対象のA1~AI6の中にあれば、 その数字を消去してセルを左に詰める方法が知りたいです。 【注意事項】   ・消去数字と検索対象の数字は毎回異なります。   ・添付図には、説明文の補助的な意味で”途中”を載せてますが、    実際には、実行したら、いきなり、”結果”のようになれば    OKです。(一旦空白にしなくても消去数字と一致したら消去    されて最後に左側に詰まればokです。)   ・実現方法は、VBAでもその他方法でもかまいません。   ・使用するエクセルは2021です。 以上、よろしくお願いします。