Excelでのセル塗りつぶしに関する質問

このQ&Aのポイント
  • Excelでのセル塗りつぶしに関する質問について解説します。
  • 質問文章では、5x6マスの中に数字が入っており、検索値と一致するセルを塗りつぶす方法について説明されています。
  • 使用するエクセルのバージョンや注意事項も記載されています。
回答を見る
  • ベストアンサー

検索値と同じ値か、左右の数字と連続数字なら塗潰す。

どなたかご存知でしたら回答をお願いします。 【質問】 例題の様に5×6マスが4つあり、その中を1~43の数字が重複有りで入っています。  1つ目の5×6マス:A1~F5  2つ目の5×6マス:H1~M5  3つ目の5×6マス:A7~F11  4つ目の5×6マス:H7~M11 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする   (最大:43)。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、   (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。   (2)検索値の左右が検索値との連続数字なら、検索値とその左右のセルを赤色で塗潰す。 〇例題   A B C D E F  G H I J K L M  1 06 21 23 36 37 43   01 08 16 31 35 41 2 07 12 14 23 26  27   06 10 13 20 31 37 3 09 17 20 29 32  39   02 15 18 30 34 38 4 03 05 13 25 27  40   01 09 25 30 42 43 5 04 11 22 28 35  38   11 16 18 24 29 42 6 7 03 17 27 36 40 41   07 21 22 23 33 37 8 03 04 08 24 26  39   02 03 07 14 18 38 9 10 12 22 32 37  42   05 10 13 28 36 40 10 02 09 25 32 41 42  07 13 22 40 41 42 11 08 14 23 24 30 39  03 29 31 32 33 40 複写数:01 ※最大1~43の数字が入る。 検索値:41 ※最大43個の数字が右に並ぶ。 〇結果  M1、F7:41が黄色で塗潰される。  E10、F10:連続数字(41、42)が赤色で塗潰される。  K10、L10、M10:連続数字(40、41、42)が赤色で塗潰される。 〇注意事項  ・使用するエクセルは2010です。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。  ・複写数欄に入力できる数字は1~43迄の1つです。 以上、よろしくお願いします。  

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.4

修正 Sub Test3() Dim i As Long, myArea As Range Dim myRang As Range, c As Range Range("A12:M521").Clear For i = 1 To Range("O1").Value Range("A1:M11").Copy Cells(i * 12 + 1, "A") Set myArea = Cells(i * 12 + 1, "A").Resize(11, 13).SpecialCells(2) Cells(2, i + 14).Copy Cells(i * 12, "A") For Each myRang In myArea.Areas For Each c In myRang.Cells If Val(c.Value) = Val(Cells(i * 12, "A").Value) Then c.Interior.Color = vbYellow If c.Column = myRang.Column Then If Val(c.Value) + 1 = Val(c.Offset(, 1).Value) And _ Val(c.Offset(, 1).Value) + 1 = Val(c.Offset(, 2).Value) Then c.Resize(, 3).Interior.Color = vbRed ElseIf Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Resize(, 2).Interior.Color = vbRed End If Else If Val(c.Offset(, -1).Value) + 1 = Val(c.Value) Then c.Offset(, -1).Resize(, 2).Interior.Color = vbRed ElseIf Val(c.Value) + 1 = Val(c.Offset(, 1).Value) And _ Val(c.Value) + 2 = Val(c.Offset(, 2).Value) Then c.Resize(, 3).Interior.Color = vbRed ElseIf Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Resize(, 2).Interior.Color = vbRed End If End If End If Next Next Next End Sub

moguo4649
質問者

お礼

素早い修正ありがとうございました。 またよろしくお願いします。

その他の回答 (3)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

>01、11といった、一番左端にある数字の検索結果では、 >01と02が赤くならず、01だけが黄色。 >11、12が赤くならず、11だけが黄色。 修正しました。 Sub Test2() Dim i As Long, myArea As Range Dim myRang As Range, c As Range Range("A12:M521").Clear For i = 1 To Range("O1").Value Range("A1:M11").Copy Cells(i * 12 + 1, "A") Set myArea = Cells(i * 12 + 1, "A").Resize(11, 13).SpecialCells(2) Cells(2, i + 14).Copy Cells(i * 12, "A") For Each myRang In myArea.Areas For Each c In myRang.Cells If Val(c.Value) = Val(Cells(i * 12, "A").Value) Then c.Interior.Color = vbYellow If c.Column = myRang.Column Then If Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Resize(, 2).Interior.Color = vbRed End If Else If Val(c.Offset(, -1).Value) + 1 = Val(c.Value) And _ Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Offset(, -1).Resize(, 3).Interior.Color = vbRed ElseIf Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Resize(, 2).Interior.Color = vbRed End If End If End If Next Next Next End Sub

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.2

質問とありますが、結局あなたこの問題のどこが解らないのでしょうか? 単にマクロを作ってくれと言っているようにしか見えません。 逆に仕様が良くわからないのでこちらから質問します。 ・「検索値欄の検索値も1つコピーする。」と、ありますがどこにコピーするのでしょうか。 ・塗りつぶすのは「複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピー」した方?大元のA1:M11のセル?  #例題の結果を見る限りではA1:M11のセルの方を塗りつぶしているようですが。 ・例題の結果で、E7:F7が赤で塗りつぶされずにF7だけが黄色で塗りつぶされるは何故? ・検索値が41だとして、マスの中に39,40,41,42,43,44と数値があった場合、黄色く塗りつぶすのは40,41,42だけ?それとも39~44全て? ・もしかして何かの問題集の問題ではないですよね?  #もし、問題集の問題だとしたら、私なら「(2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする」と「(3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。」を別問題として出題すると思います。

moguo4649
質問者

お礼

ご質問ありがとうございます。 >単にマクロを作ってくれと言っているようにしか見えません。  例題として挙げた処理をマクロでどうやって作ればいいのかわからないので質問させてもらっています。 >「検索値欄の検索値も1つコピーする。」と、ありますがどこにコピーするのでしょうか。   直下です。複写数の数だけ。 >・塗りつぶすのは「複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピー」した方?大元のA1:M11のセル?  コピーした方です。 >・例題の結果で、E7:F7が赤で塗りつぶされずにF7だけが黄色で塗りつぶされるは何故?   回答の間違いです。赤く塗り潰しが正しいです。 >・検索値が41だとして、マスの中に39,40,41,42,43,44と数値があった場合、黄色く塗りつぶすのは40,41,42だけ?それとも39~44全て?   検索値が41なら、黄色は無しです。赤色は40、41、42です。 >もしかして何かの問題集の問題ではないですよね?  そのような事はありません。完全オリジナルです。

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

>(2)検索値の左右が検索値との連続数字なら、検索値とその左右のセルを赤色で塗潰す。 >E10、F10:連続数字(41、42)が赤色で塗潰される。 検索値を含む2連続も含むのですね Sub Test() Dim i As Long, myArea As Range Dim myRang As Range, c As Range Range("A12:M521").Clear For i = 1 To Range("O1").Value Range("A1:M11").Copy Cells(i * 12 + 1, "A") Set myArea = Cells(i * 12 + 1, "A").Resize(11, 13).SpecialCells(2) Cells(2, i + 14).Copy Cells(i * 12, "A") For Each myRang In myArea.Areas For Each c In myRang.Cells If Val(c.Value) = Val(Cells(i * 12, "A").Value) Then c.Interior.Color = vbYellow If c.Column > myRang.Column Then If Val(c.Offset(, -1)) + 1 = Val(c.Value) And _ Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Offset(, -1).Resize(, 3).Interior.Color = vbRed ElseIf Val(c.Offset(, -1).Value) + 1 = Val(c.Value) Then c.Offset(, -1).Resize(, 2).Interior.Color = vbRed ElseIf Val(c.Value) + 1 = Val(c.Offset(, 1).Value) Then c.Resize(, 2).Interior.Color = vbRed End If End If End If Next Next Next End Sub

moguo4649
質問者

補足

いつも大変お世話になっています。 質問の例題とは別に下記を検索対象として、 複写数:43、検索値:1~43にして 教えて頂いたソースを貼りつけて実行したところ、 01、11といった、一番左端にある数字の検索結果では、 01と02が赤くならず、01だけが黄色。 11、12が赤くならず、11だけが黄色。 どこが悪いのでしょうか? 〇検索対象 06 11 23 27 32 42  04 09 20 24 38 39 08 16 19 31 35 42  11 12 13 21 23 38 01 03 10 21 26 34  07 17 22 25 36 40 05 13 29 35 37 41  04 10 22 29 30 32 07 14 15 18 33 39  02 15 17 20 30 34 06 24 26 35 37 41  08 18 23 27 42 43 01 02 09 14 31 41  07 08 17 19 40 41 03 12 16 18 23 30  05 06 12 13 33 37 03 10 24 29 30 40  08 13 18 24 30 32 01 02 09 19 22 42  03 34 37 38 41 43 〇複写数:43 〇検索値:1~43

関連するQ&A

  • 検索値と同じ値か、隣接数字との差が0か1なら塗潰す

    どなたかご存知でしたら回答をお願いします。 【質問】 例題の様に5×6マスが4つあり、その中を1~43の数字が重複有りで入っています。  1つ目の5×6マス:A1~F5  2つ目の5×6マス:H1~M5  3つ目の5×6マス:A7~F11  4つ目の5×6マス:H7~M11 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする   (最大:43)。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、   (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。   (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)     の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。 〇例題   A B C D E F  G H I J K L M  1 06 21 23 36 37 43  01 08 16 31 35 41 2 07 12 14 23 32  43   06 10 13 20 27 32 3 09 17 20 29 42  40   02 15 18 30 34 38 4 03 05 13 25 27  41   01 09 25 30 42 43 5 04 11 22 28 35  39   11 16 18 24 29 42 6 7 03 17 27 36 40 41   07 21 22 23 33 37 8 03 04 08 24 26  39   02 03 07 14 18 38 9 10 12 22 32 37  42  05 10 13 40 41 42 10 02 09 25 32 41 42  07 13 22 40 41 42 11 08 14 23 24 30 39  03 29 31 40 41 42 複写数:01 ※最大1~43の数字が入る。 検索値:41 ※最大43個の数字が右に並ぶ。 〇結果  M1:41が黄色で塗潰される。  E3、F3、F4 :40、41、42が赤色で塗潰される。  E7、F7   :40、41が赤色で塗潰される。   F9、E10、F10:41、42、42が赤色で塗潰される。   K9、L9、M9、K10、L10、M10、K11、L11、M11:40、41、42が赤色で塗潰される。 〇注意事項  ・使用するエクセルは2010です。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。  ・複写数欄に入力できる数字は1~43迄の1つです。 以上、よろしくお願いします。

  • 【改造】検索値と一緒に出ている隣接数字を知るには?

    いつもお世話になっております。 どかたかご存知でしたら回答をお願いします。 1ケ月程前に下記の質問をさせていただきました。 そして回答を頂きました。これを改造したく質問します。 尚、5×6マス以外に、5×5マス、5×7マスへの改造方法も教えて頂けると助かります。 ◆改造(付け加える)要件・・・下記以外は前回と同じです。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、  (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。【既存】  (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)   の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。【既存】  (3)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)   の数字が全て同じなら、青く塗り潰す。【追加】 〇例題  A B C D E F G H I J K L M 1 01 11 16 26 31 40  08 15 21 25 30 35 2 02 03 06 17 27 41  01 11  26  28 31 36 3 04 09 12 19 22 42  02 03  06  16 17 37 4 05 13 14 23 29 43  04 09  12  22 27 38 5 07 10 18 20 24 27  05 13  19  23 29 39 6 7 04 13 16 30 31 33  05 08 20 22 26 37 8 02 15 17 24 29 34  01 03 07 18 19 38 9 01 03 07 19 25 35  04 12 14 16 25 39 10 11 12 14 21 27 36  10  11 21 23 27 40 11 06 09 10 23 28 37  06  08 09 20 28 41 複写数:01 ※最大1~43の数字が入る。 検索値:01 ※最大43個の数字が右に並ぶ。 〇結果  A1、H2、A9、H8:01が黄色で塗潰される。  A2、H3、A8   :02が赤色で塗潰される。  B2、I3、B9、I8 :03が青色で塗潰される。 〇青色を塗潰す説明  A1にある01の隣接数字は小さい順に、02、03、11  H2にある01の隣接数字は小さい順に、02、03、08、11、15  A9にある01の隣接数字は小さい順に、02、03、11、12、15  H8にある01の隣接数字は小さい順に、03、04、05、08、12  01が見つかった4か所全てに出現している隣接数字は03なので03を青色で塗潰す。  逆に03を検索値とした場合は、  B2にある03接数字は小さい順に、01、02、04、06、09、11、12、16  I3にある03隣接数字は小さい順に、01、02、04、06、09、11、12、26  B9にある03隣接数字は小さい順に、01、02、07、11、12、14、15、17  I8にある0の隣接数字は小さい順に、01、04、05、07、08、12、14、20  03が見つかった4か所全てに出現している隣接数字は01、12なので、  01、12を青色で塗潰す。 ****2018/11/21の質問の内容**** 【質問】 例題の様に5×6マスが4つあり、その中を1~43の数字が重複有りで入っています。  1つ目の5×6マス:A1~F5  2つ目の5×6マス:H1~M5  3つ目の5×6マス:A7~F11  4つ目の5×6マス:H7~M11 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする   (最大:43)。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、   (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。   (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)     の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。 〇例題   A B C D E F  G H I J K L M  1 06 21 23 36 37 43  01 08 16 31 35 41 2 07 12 14 23 32 43  06 10 13 20 27 32 3 09 17 20 29 42 40  02 15 18 30 34 38 4 03 05 13 25 27 41  01 09 25 30 42 43 5 04 11 22 28 35 39  11 16 18 24 29 42 6 7 03 17 27 36 40 41  07 21 22 23 33 37 8 03 04 08 24 26 39  02 03 07 14 18 38 9 10 12 22 32 37 42  05 10 13 40 41 42 10 02 09 25 32 41 42  07 13 22 40 41 42 11 08 14 23 24 30 39  03 29 31 40 41 42 複写数:01 ※最大1~43の数字が入る。 検索値:41 ※最大43個の数字が右に並ぶ。 〇結果  M1:41が黄色で塗潰される。  E3、F3、F4 :40、41、42が赤色で塗潰される。  E7、F7   :40、41が赤色で塗潰される。   F9、E10、F10:41、42、42が赤色で塗潰される。   K9、L9、M9、K10、L10、M10、K11、L11、M11:40、41、42が赤色で塗潰される。 〇注意事項  ・使用するエクセルは2010です。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。  ・複写数欄に入力できる数字は1~43迄の1つです。 以上、よろしくお願いします。

  • 5×6マス検索→5×5マス検索への改造の仕方。

    いつもお世話になっております。 先日こちらで、「検索値と同じ値か、隣接数字との差が0か1なら塗潰す」を 質問させて頂き、回答をいただきました。 この時は5×6マスが4つあるケースでしたが、 これを、以下の様に5×5マスが4つあるケースでは どうすればよいでしょうか? マスが変更になった以外は前回と変更ありません。 できれば、5×7マスが4つのケースも教えて頂けると助かります。  1つ目の5×5マス:A1~E5  2つ目の5×5マス:G1~K5  3つ目の5×5マス:A7~E11  4つ目の5×5マス:G7~K11   A B C D E  F G H I J K   1 01 08 11 18 25   03 06 17 20 24 2 02 19 23 26 27   01 08 16 18 25 3 10 15 28 29 30   02 11 19 23 26 4 04 07 12 14 21   10 15 27 28 30 5 05 09 13 22 31   04 07 12 21 29 6 7 08 11 12 20 28  04 15 17 25 31 8 06 07 22 23 26  01 09 13 19 29 9 01 09 19 24 29  10 11 14 24 28 10 03 10 14 18 27  03 05 18 21 27 11 02 05 16 21 30  02 16 17 30 31 ****** 以下は前回の質問 ****** 【質問】 例題の様に5×6マスが4つあり、その中を1~43の数字が重複有りで入っています。  1つ目の5×6マス:A1~F5  2つ目の5×6マス:H1~M5  3つ目の5×6マス:A7~F11  4つ目の5×6マス:H7~M11 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする   (最大:43)。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、   (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。   (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)     の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。 〇例題   A B C D E F  G H I J K L M  1 06 21 23 36 37 43  01 08 16 31 35 41 2 07 12 14 23 32 43  06 10 13 20 27 32 3 09 17 20 29 42 40  02 15 18 30 34 38 4 03 05 13 25 27 41  01 09 25 30 42 43 5 04 11 22 28 35 39  11 16 18 24 29 42 6 7 03 17 27 36 40 41  07 21 22 23 33 37 8 03 04 08 24 26 39  02 03 07 14 18 38 9 10 12 22 32 37 42  05 10 13 40 41 42 10 02 09 25 32 41 42  07 13 22 40 41 42 11 08 14 23 24 30 39  03 29 31 40 41 42 複写数:01 ※最大1~43の数字が入る。 検索値:41 ※最大43個の数字が右に並ぶ。 〇結果  M1:41が黄色で塗潰される。  E3、F3、F4 :40、41、42が赤色で塗潰される。  E7、F7   :40、41が赤色で塗潰される。   F9、E10、F10:41、42、42が赤色で塗潰される。   K9、L9、M9、K10、L10、M10、K11、L11、M11:40、41、42が赤色で塗潰される。 〇注意事項  ・使用するエクセルは2010です。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。  ・複写数欄に入力できる数字は1~43迄の1つです。 以上、よろしくお願いします。

  • 値が入るセル全体を下にコピーした後に検索する方法2

    どなたかご存知でしたら回答をよろしくお願いします。 【質問】 下図の様に、a~r、1~10の合計180個のセルに数字が1~99迄の重複有りで 入っています。a1,a2,b1,b2,c1,c2の6つのセルで1つのマスとみなすと、 180個のセルは縦:5マス、横:6マスの合計30マスとなります。 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、a1~r10の180個のセルを1塊りとして下にコピーする。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側のマス(4つのセルの集合)を塗潰す。   具体的には、    (1)1つのマスに一致した数字が1個の場合は黄色で塗り潰す。    (2)1つのマスに一致した数字が2個の場合は赤色で塗り潰す。    (3)1つのマスに一致した数字が3個の場合は緑色で塗り潰す。    (4)1つのマスに一致した数字が4個の場合は青色で塗潰す。    (5)1つのマスに一致した数字が5個の場合は紫色で塗潰す。    (6)1つのマスに一致した数字が6個の場合はオレンジ色で塗潰す。 〇例題  a b c d e f g h i j k l m n o p q r 1 02 05 07 07 14 13 15 16 17 28 22 32 33 37 91 92 93 94 95 2 03 03 07 14 13 28 99 31 23 32 31 36 32 37 81 82 83 84 85 3 05 01 07 06 15 07 20 08 26 12 27 19 32 37 71 72 73 74 79 4 04 03 08 10 10 14 12 17 24 18 30 22 37 24 61 60 54 49 48 5 08 01 13 02 16 04 25 09 28 15 34 24 36 34 50 55 52 67 99 6 01 06 05 12 18 14 22 19 23 30 26 35 28 36 41 42 43 44 45 7 02 03 04 11 06 16 20 21 25 26 29 27 31 29 51 68 75 76 77 8 07 07 08 10 09 14 17 15 18 21 19 26 20 34 96 97 88 87 66 9 07 07 10 04 11 05 18 13 27 20 28 33 30 34 86 39 38 49 62 10 07 07 16 14 19 24 24 25 27 26 33 32 35 35 54 86 87 88 78 複写数:01 ※最大1~43の数字が入る。 検索値:07 ※最大43個の数字が右に並ぶ。 【結果】 検索値:07 ※上記、検索値の左から1つずつ値を取得して下記のセルを検索する。 02 05 07 07 14 13 15 16 17 28 22 32 33 37 91 92 93 94 95 03 03 07 14 13 28 99 31 23 32 31 36 32 37 81 82 83 84 85 05 01 07 06 15 07 20 08 26 12 27 19 32 37 71 72 73 74 79 04 03 08 10 10 14 12 17 24 18 30 22 37 24 61 60 54 49 48 08 01 13 02 16 04 25 09 28 15 34 24 36 34 50 55 52 67 99 01 06 05 12 18 14 22 19 23 30 26 35 28 36 41 42 43 44 45 02 03 04 11 06 16 20 21 25 26 29 27 31 29 51 68 75 76 77 07 07 08 10 09 14 17 15 18 21 19 26 20 34 96 97 88 87 66 07 07 10 04 11 05 18 13 27 20 28 33 30 34 86 39 38 49 62 07 07 16 14 19 24 24 25 27 26 33 32 35 35 54 86 87 88 78 a11に”検索値”が1個コピーされ、 次にa1~r10までのセルの内容がa12~r22にコピーされた後、 コピーされた検索値の07で検索後に07が入った下記の6マス(36セル)が塗潰される。 検索値に07を入れたら、下記の6マス(36セル)が塗潰される。 a1,b1,c1,a2,b2,c2 ・・・ 2個一致なので、赤色で塗潰される。 d1,e1,f1,d2,e2,f2・・・ 1個一致なので、黄色で塗潰される。 a3,b3,c3,a4,b4,c4 ・・・1個一致なので、黄色で塗潰される。 d3,e3,f3,d4,e4,f4  ・・・1個一致なので、黄色で塗潰される。 a7,b7,c7,a8,b8,c8 ・・・2個一致なので、赤色で塗潰される。 a9,b9,c9,a10,b10,c10・・・4個一致なので、青色で塗潰される。 ※複写数と検索値が複数件ある場合は、複写数の数だけ下にa1~r10の内容がコピーされて、  検索値の値の左側から1個ずつコピーされその値で検索される。 〇注意事項  ・使用するエクセルは2010です。  ・1マス=6セルです。※a1,a2,b1,b2,c1,c2で1マスです。  ・セルに入っている数字はランダムで、同じ数字の重複は30マス(180セル)全体で    6個迄です(1マスに6個入る事も有るし、6マスに1個ずつ入る事もあります。)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。   ・複写数欄に入力できる数字は1~43迄の1つです。   ※複写数と検索値の数は一致していない場合はエラーとして動作をSTOPします。    例1)複写数:3、検索値:2,5,4,37,18 →検索値の数と複写数が不一致。    例2)複写数:0 検索値:3 →複写数がゼロのため。    例3)複写数:1 検索値:0 →検索値がゼロのため。   ※複写数分、a1~r10の180個のセルは下にコピーされ、検索値の値は左から    1つずづ使用して、実際の検索と結果としての値として使用します。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01) ・この質問は先月、「値が入るセル全体を下にコピーした後に検索する方法」という   タイトルで質問させて頂いた、6セル版での質問です。 以上、よろしくお願いします。

  • 値が入るセル全体を下にコピーした後に検索する方法

    どなたかご存知でしたら回答をよろしくお願いします。 【質問】 下図の様に、a~n、1~10の合計140個のセルに数字が1~99迄の重複有りで 入っています。a1,a2,b1,b2の4つのセルで1つのマスとみなすと、 140個のセルは縦:5マス、横:7マスの合計35マスとなります。 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、a1~n10の140個のセルを1塊りとして下にコピーする。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側のマス(4つのセルの集合)を塗潰す。   具体的には、    (1)1つのマスに一致した数字が1個の場合は黄色く塗り潰す。    (2)1つのマスに一致した数字が2個の場合は赤く塗り潰す。    (3)1つのマスに一致した数字が3個の場合は緑色で塗り潰す。    (4)1つのマスに一致した数字が4個の場合は青色で塗潰す。 〇例題  a b c d e f g h i j k l m n 1 02 05 07 07 14 13 15 16 17 28 22 32 33 37 2 03 03 07 14 13 28 99 31 23 32 31 36 32 37 3 05 01 07 06 15 07 20 08 26 12 27 19 32 37 4 04 03 08 10 10 14 12 17 24 18 30 22 37 24 5 08 01 13 02 16 04 25 09 28 15 34 24 36 34 6 01 06 05 12 18 14 22 19 23 30 26 35 28 36 7 02 03 04 11 06 16 20 21 25 26 29 27 31 29 8 07 07 08 10 09 14 17 15 18 21 19 26 20 34 9 07 07 10 04 11 05 18 13 27 20 28 33 30 34 10 07 07 16 14 19 24 24 25 27 26 33 32 35 35 複写数:01 ※最大1~37の数字が入る。 検索値:07 ※最大37個の数字が右に並ぶ。 【結果】 検索値:07 ※上記、検索値の左から1つずつ値を取得して下記のセルを検索する。 02 05 07 07 14 13 15 16 17 28 22 32 33 37     03 03 07 14 13 28 99 31 23 32 31 36 32 37 05 01 07 06 15 07 20 08 26 12 27 19 32 37 04 03 08 10 10 14 12 17 24 18 30 22 37 24 08 01 13 02 16 04 25 09 28 15 34 24 36 34 01 06 05 12 18 14 22 19 23 30 26 35 28 36 02 03 04 11 06 16 20 21 25 26 29 27 31 29 07 07 08 10 09 14 17 15 18 21 19 26 20 34 07 07 10 04 11 05 18 13 27 20 28 33 30 34 07 07 16 14 19 24 24 25 27 26 33 32 35 35 a11に”検索値”が1個コピーされ、 次にa1~n10までのセルの内容がa12~n22にコピーされた後、 コピーされた検索値の07で検索後に07が入った下記の5マス(20セル)が塗潰される。 c12,d12,c13,d13 ・・・ 3個一致なので、緑色で塗潰される。 c14,d14,c15,d15 ・・・ 1個一致なので、黄色で塗潰される。 e14,f14,e15,f15 ・・・ 1個一致なので、黄色で塗潰される。 a18,b18,a19,b19  ・・・2個一致なので、赤色で塗潰される。 a20,b20,a21,b21 ・・・4個一致なので、青色で塗潰される。 ※複写数と検索値が複数件ある場合は、複写数の数だけ下にa1~n10の内容がコピーされて、  検索値の値の左側から1個ずつコピーされその値で検索される。 〇注意事項  ・使用するエクセルは2010です。  ・1マス=4セルです。※a1,a2,b1,b2で1マスです。  ・セルに入っている数字はランダムで、同じ数字の重複は35マス(140セル)全体で    4個迄です(1マスに4個入る事も有るし、4マスに1個ずつ入る事もあります。)  ・検索値欄に入力できる数字は最大37個で、1~37迄の数字です。   ・複写数欄に入力できる数字は1~37迄の1つです。   ※複写数と検索値の数は一致していない場合はエラーとして動作をSTOPします。    例1)複写数:3、検索値:2,5,4,37,18 →検索値の数と複写数が不一致。   例2)複写数:0 検索値:3 →複写数がゼロのため。    例3)複写数:1 検索値:0 →検索値がゼロのため。   ※複写数分、a1~n10の140個のセルは下にコピーされ、検索値の値は左から    1つずづ使用して、実際の検索と結果としての値として使用します。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01) 以上、よろしくお願いします。

  • 【改造】検索値と一緒に出ている隣接数字を知るには2

    いつもお世話になっております。 どかたかご存知でしたら回答をお願いします。 ここ最近、同じ様な質問をしておりますが、よろしくお願いします。 ◆改造(付け加える)要件・・・下記以外は前回と同じです。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、  (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。【既存】  (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)   の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。【既存】  (3)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)   の数字が全て同じなら、青く塗り潰す。【既存】  (4)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)   の数字が1ヶ所を除いて全て同じなら、緑色で塗り潰す。【追加】 〇例題  A B C D E F G H I J K L M 1 01 11 16 26 31 40  08 15 21 25 30 35 2 02 03 06 17 27 41  01 11 26 28 31 36 3 04 09 12 19 22 42  02 03 06 16 17 37 4 05 13 14 23 29 43  04 09 12 22 27 38 5 07 10 18 20 24 27  05 13 19 23 29 39 6 7 04 13 16 30 31 33  05 08 20 22 26 37 8 02 15 17 24 29 34  01 03 07 18 19 38 9 01 03 07 19 25 35  04 12 14 16 25 39 10 11 12 14 21 27 36  10 11 21 23 27 40 11 06 09 10 23 28 37  06 08 09 20 28 41 複写数:01 ※最大1~43の数字が入る。 検索値:01 ※最大43個の数字が右に並ぶ。 〇結果  A1、H2、A9、H8:01が黄色で塗潰される。  A2、H3、A8   :02が赤色となる筈だが、3ヶ所で出ているので緑色で塗潰す。  B2、I3、B9、I8 :03が青色で塗潰される。   B1、I2、A10   :11が緑色で塗潰される。  〇青色、緑色で塗潰す説明  A1にある01の隣接数字は小さい順に、02、03、11  H2にある01の隣接数字は小さい順に、02、03、08、11、15  A9にある01の隣接数字は小さい順に、02、03、11、12、15  H8にある01の隣接数字は小さい順に、03、04、05、08、12  01が見つかった4か所全てに出現している隣接数字は03なので03を青色で塗潰す。  01が見つかった3か所全てに出現している隣接数字は02と11なので、  02と11を緑色で塗潰す。  ※02は本来、01の差:1のため赤色となるが、緑色の条件にも当てはまるため最終的に  緑色で塗潰す。(青色の条件に当てはまった場合も緑色の条件にも当てはまれば最終的に  緑色で塗潰す。)  逆に03を検索値とした場合は、  B2にある03接数字は小さい順に、01、02、04、06、09、11、12、16  I3にある03隣接数字は小さい順に、01、02、04、06、09、11、12、26  B9にある03隣接数字は小さい順に、01、02、07、11、12、14、15、17  I8にある0の隣接数字は小さい順に、01、04、05、07、08、12、14、20  03が見つかった4か所全てに出現している隣接数字は01、12なので、  01、12を青色で塗潰す。  03が見つかった3か所全てに出現している隣接数字は02、04、11、なので、  02、04、11を緑色で塗潰す。 ****2018/11/21の質問の内容**** 【質問】 例題の様に5×6マスが4つあり、その中を1~43の数字が重複有りで入っています。  1つ目の5×6マス:A1~F5  2つ目の5×6マス:H1~M5  3つ目の5×6マス:A7~F11  4つ目の5×6マス:H7~M11 使い方としては、  (1)複写数欄と検索値欄それぞれに値を入れます。  (2)複写数欄の数だけ、上記4つの5×6のセルを1塊りとして下にコピーする   (最大:43)。   検索値欄の検索値も1つコピーする。  (3)コピー後に検索値欄の値でコピーした側の4つの5×6のセル内を検索して塗潰す。   具体的には、   (1)検索値と同じ値を見つけたら、黄色でセルを塗潰す。   (2)検索値と同じ値で隣接する8方向(上、下、左、右、右下、左下、右上、左上)     の数字との差が0か1なら、検索値とそのセルを赤色で塗潰す。 〇例題   A B C D E F  G H I J K L M  1 06 21 23 36 37 43  01 08 16 31 35 41 2 07 12 14 23 32 43  06 10 13 20 27 32 3 09 17 20 29 42 40  02 15 18 30 34 38 4 03 05 13 25 27 41  01 09 25 30 42 43 5 04 11 22 28 35 39  11 16 18 24 29 42 6 7 03 17 27 36 40 41  07 21 22 23 33 37 8 03 04 08 24 26 39  02 03 07 14 18 38 9 10 12 22 32 37 42  05 10 13 40 41 42 10 02 09 25 32 41 42  07 13 22 40 41 42 11 08 14 23 24 30 39  03 29 31 40 41 42 複写数:01 ※最大1~43の数字が入る。 検索値:41 ※最大43個の数字が右に並ぶ。 〇結果  M1:41が黄色で塗潰される。  E3、F3、F4 :40、41、42が赤色で塗潰される。  E7、F7   :40、41が赤色で塗潰される。   F9、E10、F10:41、42、42が赤色で塗潰される。   K9、L9、M9、K10、L10、M10、K11、L11、M11:40、41、42が赤色で塗潰される。 〇注意事項  ・使用するエクセルは2010です。  ・セルの数字は表示上、2桁で表しています。(例:1ではなく01)  ・検索値欄に入力できる数字は最大43個で、1~43迄の数字です。  ・複写数欄に入力できる数字は1~43迄の1つです。 以上、よろしくお願いします。

  • 行の連続数字を見つけて塗潰す方法

    どなたかご存知でしたら回答をよろしくお願いします。 【質問】 下図の様に5×5のセルが4つあり、それぞれ1~99迄の数字がランダムに 重複有りで入っています。5×5のセルの中には行の連続数字(例:02 03) が入っています(1個も無い場合もあります)。 行の連続数字を見つけたら、その連続数字のセルを塗潰す方法が知りたいです。  ・2連続・・・黄色で塗潰す。   ・3連続・・・赤色で塗潰す。  ・4連続・・・青色で塗潰す。  ・5連続・・・緑色で塗潰す。  A B C D E F  G H I J K   1 01 07 09 11 22     03 10 20 30 31 2 04 12 14 15 23     01 02 07 09 22 3 07 13 17 18 25     04 11 12 14 15 4 06 16 21 24 26     02 13 17 18 23 5 08 19 27 28 29     06 16 24 25 26 6 7 05 09 11 26 30     03 06 13 22 27 8 04 10 15 19 24     03 14 25 28 29 9 01 14 20 25 29     05 11 18 20 21 10 07 18 21 23 31     07 08 16 23 31 11 02 08 12 16 17     02 03 12 17 27 【結果】 上記4つある5×5のセルには、10個の重複数字がありその数字のセルが塗潰されます。 (1)14 15  (2)17 18 (3)27 28 29 (4)30 31 (5)14 15 (6)24 25 26 (7)16 17 (8)28 29 (9)07 08 (10)02 03 【注意事項】  ・使用するエクセルは2010です。  ・セルの中の数字は2桁で表しています。(例:1ではなく01)  ・5×5のセルの位置は下記のとおりです。    1個目の5×5マス・・・A1~E5    2個目の5×5マス・・・G1~K5      3個目の5×5マス・・・A7~E11    4個目の5×5マス・・・G7~K11  ・回答はVBでも関数でも構いません。 以上、よろしくお願いします。

  • 塗潰されたセルと同じ色の数字同士を抽出して並べる2

    いつもお世話になっております。 ご存じの方がお見えでしたらご回答をよろしくお願いします。 ※特に、SI299792 様よろしくお願いします。 【質問】  昨日、こちらで質問させて頂きました「塗潰されたセルと同じ色の数字同士を  抽出して並べる」(2020/06/06 14:19 質問No.9757677)の改造版の質問です。  添付図のとおり、昨日の質問とは異なり5×5が4マスではなく、  5×6が4マスありこれを1つとして、S1の数だけ下に複写して  S2の数字で5×6が4マスの中を検索して、  下記のとおり該当するセルを塗り潰します。   ・検索値・・・・黄色   ・検索値の±1の数字・・・赤色   ・検索値と同じ数だけ周りにある数字・・・緑色   ・検索値より1つ少ない数だけ周りにある数字・・・青色  ここまでの質問は(2018/12/30 09:06 質問No.9572759 )にさせて頂き、  SI299792様にVBAのソースを頂きました。  (SI299792様に怒られると思うのでソースはここには載せません。)  この状態だと、P列にある4色(黄色、青色、赤色、緑色)の右側に  左側の同じ色で塗潰された数字を左から昇順に並べる事ができません。  添付図の様にするにはどうすればよいですか? 以上、よろしくお願いします。

  • 左右、上下重なる位置にある数字を取得する。

    いつもお世話になっております。 ご存知の方、ご回答をよろしくお願いします。 【質問】 添付図の様に5×5マスが、A,B,C,Dの4つ存在します。 検索KEYの6個の数字でA,B,C,Dの各5×5マス内を検索して 一致したら、セルを黄色で塗り潰す。 次に、各5×5マスの3列目を中心として黄色に塗りつぶしたセルの 左右反対側にある数字を取得して右側の”〇枠左右”の下に並べる。 最後に、各5×5マスの3行目を中心として黄色に塗りつぶしたセルの 上下反対側になる数字を取得して右側の”〇枠上下”の下に並べる。 【注意事項】   ・検索KEYの6個の数字は重複無しで、毎回、入力する値は変わります。   ・A,B、C,Dの各5×5枠の中の数字は重複在りで、    毎回、数字は変わります。数字は1~99迄です。   ・A,B,C,Dの各5×5マスの中に検索KEYの6個の数字が1つも    存在しないことはあります。   ・使用するエクセルは2016です。 以上、よろしくお願いします。

  • 指定した回数で2個の検索値で検索して赤で塗潰す方法

    いつもお世話になっております。 どなたかご存知でしたら回答をお願いします。 (できれば、SI299792様やnishi6様から回答頂けるとありがたいです。) 【質問】  添付図のとおり、5列×20行に1~31迄の数字がA1~E20迄で重複在りで  入っています。M1とN1に検索する数字が入り、最大25行数字が入っています。  K1に1~25迄の繰り返し回数を入れるとA1~E20までの内容を下にコピー  しながら、2個の検索値で検索をして見つかれば赤色に塗り潰す方法が知りたい  です。  ◎動作について   (1)A1~E20までの内容をK1の数字分を下にコピーします。   (2)M1とN1の値をG1とH1に入れます。(L1の”検索値”をF1に入れます。)   (3)M1とN1の値でA1~E20までの数字を検索して該当あれば赤色に    塗り潰します。   ※以降、K1の回数分、(2)~(3)を繰り返します。 【注意事項】   ・使用するエクセルは2016です。 以上、よろしくお願いします。

専門家に質問してみよう