隣の列より大きい数字で組み合わせを作成する方法

このQ&Aのポイント
  • 1枠から5枠にそれぞれに入っている1~31迄の15個の数字で、左の枠の数字より大きい数字で組み合わせを作成する方法について教えてください。
  • エクセル2016で、1枠から5枠までの数字を使って右側に組み合わせを並べる方法を教えてください。
  • 隣の枠には同じ数字がありますが、1枠から5枠の数字を重複なく使って、左の枠の数字より大きい組み合わせを作成する方法を教えてください。
回答を見る
  • ベストアンサー

隣の列より大きい数字で組み合わせを作成する

いつもお世話になっています。 添付の様に1枠から5枠まで縦に1~31迄の数字のうち 15個の数字がランダムに入っています。 1枠~5枠で1つずつ数字を選択して右側に組み合わせを並べるには どうすればよいですか? 〇ルール  1枠から5枠にそれぞれに入っている1~31迄の15個の数字で、  左の枠の数字より大きい数字で組み合わせを作成する。  例)   よい例: 2 9 18 22 31・・(1枠 > 2枠 > 3枠 >4枠 >5枠)   悪い例: 7 5 11 14 15・・(1枠 < 2枠 > 3枠 >4枠 >5枠)   〇その他  ・使用するエクセルは2016です。  ・各枠毎には1~31迄の数字のうち15個がランダムに入っています。   1つの枠内で数字の重複はありませんが、   隣の枠には同じ数字があります。 以上、よろしくお願いします。

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

  • ベストアンサー
  • HohoPapa
  • ベストアンサー率65% (454/692)
回答No.2

ごめんなさい。直しました。 Sub SampleA()  Dim Cnt1 As Long  Dim Cnt2 As Long  Dim Cnt3 As Long  Dim Cnt4 As Long  Dim Cnt5 As Long  Dim PutRow As Long    PutRow = 2  With ThisWorkbook.Sheets(1)   For Cnt1 = 3 To 17    For Cnt2 = 3 To 17     For Cnt3 = 3 To 17      For Cnt4 = 3 To 17       For Cnt5 = 3 To 17        If ((.Cells(Cnt1, 1).Value < .Cells(Cnt2, 2).Value) And _         (.Cells(Cnt2, 2).Value < .Cells(Cnt3, 3).Value) And _         (.Cells(Cnt3, 3).Value < .Cells(Cnt4, 4).Value) And _         (.Cells(Cnt4, 4).Value < .Cells(Cnt5, 5).Value)) Then         PutRow = PutRow + 1         .Cells(PutRow, 7).Value = .Cells(Cnt1, 1).Value         .Cells(PutRow, 8).Value = .Cells(Cnt2, 2).Value         .Cells(PutRow, 9).Value = .Cells(Cnt3, 3).Value         .Cells(PutRow, 10).Value = .Cells(Cnt4, 4).Value         .Cells(PutRow, 11).Value = .Cells(Cnt5, 5).Value        End If       Next Cnt5      Next Cnt4     Next Cnt3    Next Cnt2   Next Cnt1  End With End Sub

sazanami0422
質問者

お礼

早速修正いただきありがとうございます。 再度、実行したところイイ感じの結果になりました。

その他の回答 (1)

  • HohoPapa
  • ベストアンサー率65% (454/692)
回答No.1

こんな感じでしょか。 (ちょっと手抜きです) Sub SampleA()  Dim Cnt1 As Long  Dim Cnt2 As Long  Dim Cnt3 As Long  Dim Cnt4 As Long  Dim Cnt5 As Long  Dim PutRow As Long    PutRow = 2  With ThisWorkbook.Sheets(1)   For Cnt1 = 3 To 17    For Cnt2 = 3 To 17     For Cnt3 = 3 To 17      For Cnt4 = 3 To 17       For Cnt5 = 3 To 17        If ((.Cells(Cnt1, 1).Value < .Cells(Cnt2, 2).Value) And _         (.Cells(Cnt1, 2).Value < .Cells(Cnt2, 3).Value) And _         (.Cells(Cnt1, 3).Value < .Cells(Cnt2, 4).Value) And _         (.Cells(Cnt1, 4).Value < .Cells(Cnt2, 5).Value)) Then         PutRow = PutRow + 1         .Cells(PutRow, 7).Value = .Cells(Cnt1, 1).Value         .Cells(PutRow, 8).Value = .Cells(Cnt2, 2).Value         .Cells(PutRow, 9).Value = .Cells(Cnt3, 3).Value         .Cells(PutRow, 10).Value = .Cells(Cnt4, 4).Value         .Cells(PutRow, 11).Value = .Cells(Cnt5, 5).Value        End If       Next Cnt5      Next Cnt4     Next Cnt3    Next Cnt2   Next Cnt1  End With End Sub なお、抽出結果の並べ替えは (求める並び順が明示されていないことから) 行っていません。 また、課題サンプルデータの場合 22万行弱ありますよ。

sazanami0422
質問者

補足

早速のご回答いただきありがとうございます。 作っていただいたソースを実行したところ、 例えば1枠にある、1や2の数字より大きい2枠の数字の3は無く 5や6以上の数字になっています。 添付した図の結果には、1枠に1があり、2枠には3となっています。 1枠>2枠>3枠>4枠>5枠  (正しくは、1枠<2枠<3枠<4枠<5枠)なので、 左側の枠の数字より右側の枠の数字が大きいことを表しますが、 右側の枠の数字の1番目としては、 左側の枠の数字+1に近い数字になります。

関連するQ&A

  • 固定数字から使用した数字の残りを表示する。

    お世話になっています。 質問があります。 添付図の様に数字が1から50まで固定値としてあります。 その下に検索対象として5×6マスが1から5まで有り、 数字がランダムに1から50迄、重複有りで入っています。 右側に検索対象として出てこなかった数字を昇順で左から並べるには どうすればよいでしょうか? よろしくお願いします。

  • 指定した数字が含まれる組合せを抽出する。

    どなたかご存じでしたら回答をお願いします。 数字選択式宝くじの「ミニロト」の組合せをフリーソフトで作成&CSVデータに出力しています。 これをエクセルに取りこむと下記のようになります。 【作成されてエクセルに取りこんだCSVデータ】 01 04 06 07 22 01 06 07 13 22 01 06 07 22 27 03 04 11 13 29 04 13 15 18 27 ここから、「指定した数字の○ or ○ or ○ or ○ or ○が含まれる組合せを抽出する。」 というのをエクセルでやりたいですがどうやればよいでしょうか? できれば1回の操作で結果が出るのがよいです。 上記例でいうと、「指定した数字の4 or 13 が含まれる組合せを抽出する。」と指定すれば 下記抽出結果が得られる。 【抽出結果】 01 04 06 07 22 01 06 07 13 22 03 04 11 13 29 04 13 15 18 27 CSVデータは1個~169911個まであります。 指定された数字が第1数字~第5数字のいずれかに入っていれば抽出対象です。 指定する数字は1個~5個です。 エクセルの操作およびVBAでのソースを教えて下さい。 よろしくお願いします。

  • ランダムに6つの数字を選びその際、数字が重複しない様にする方法が知りたいです。

    6個の枠があり、ボタンを押すとそれぞれの枠に ランダムに1~43の数字が表示できるようにしたいです。 その際それぞれの数字が重複しない様にしたいです。 ランダムに数字を選ぶようには、何となく解りますが、 重複しない様にする方法が解りません。 よろしくお願いします。

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。 以上、ご回答よろしくお願いします。

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。    ・エクセルの”combin関数”について知りたい訳ではありません。 以上、ご回答よろしくお願いします。

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。    ・エクセルの”combin関数”について知りたい訳ではありません。 以上、ご回答よろしくお願いします。

  • エクセル「3つの数字の合計がある数字になる組み合わせ」を調べたい。

    こんにちは。 エクセルで、以下のような問題を解くことはできますでしょうか? 基本的な関数しかできず、自分で調べたところ。ソルバーやVBAを使えばできるのかもしれないとは思ったのですが、なかなか良い類似例を見つけられず、苦戦しています。 <問題> 「3」「5」「6」「8」…といったランダムな数字が合計になる3つの数字のすべての組み合わせを知りたいです。 たとえば、 「3」なら答えは「1+1+1」 「5」なら答えは「2+1+1」「1+2+1」「1+1+2」 「6」なら答え「4+1+1」「1+4+1」「1+1+4」「3+2+1」「2+3+1」「1+2+3」「3+2+1」…のような形です。 ※実は子どもの名付けで、画数の組み合わせを出そうと思っています。 わかりづらい点があるかとは存じますが、お力添え何卒よろしくお願い致します。

  • Excelでの数字の抽出について

    Excelでの数字の抽出について Excelの表を使って、0~9までの数字で4桁の数字をランダムに作成したいです。 その数字の組み合わせを20通り、異なる組み合わせで作りたいです。 その4桁の数字は、同じ数字を使用しても構いません。 例えば、「3・9・9・7」など。 どのような数式を使用すればいいでしょうか? また、同様に3桁の組み合わせの場合も教えて欲しいです。

  • ナンバーズ3、4の重複しないシングルの組み合わせ

    どなたかご存じでしたら回答をお願いします。 数字選択式宝くじのナンバーズ4の組み合わせは、 0000~9999までの10000通りあります。 この中で、全ての数字が異なる組み合わせは 5040通り(10×9×8×7)あると思います。 これを、「重複しないシングル組み合わせ」は 210通り(5040÷(4×3×2×1))になるかと思います。 この210通りの全ての組み合わせをエクセルで作りたいのですが、 作り方が分かりません。 同様に、ナンバーズ3については、000~999までの1000通りの 組み合わせの中から、全ての数字が異なる組み合わせは 720通り(10×9×8)あると思います。 これを、「重複しないシングル組み合わせ」は 120通り(720÷(3×2×1))の全て組み合わせをエクセルで作りたいのですが、 作り方が分かりません。 120 通りと240通りなのでエクセル又はエクセルVBAでの作り方を教えてください。 よろしくお願いします。

  • Excelの数字を、数字の組み合わせにしたい

    またまた、助けてください。 大変困っています。 Excelで管理しているシートで数字を、数字の組み合わせにしたい思っています。 ただ、ある部分だけ、数字が2桁になったり1桁になったりします。 これを解消したいと思っています。 例1: A1に120345.6789と入れたら、 これを:B1で12度3分45.6789秒と表示したい。 もしくは、 例2: A1に123456.7891と入れたら、 これを:B1で12度34分56.7891秒と表示したい。 なにとぞよろしくお願いします。

専門家に質問してみよう