プロが教える店舗&オフィスのセキュリティ対策術

質問です!

ExcelのA1からG1のセルに、1から7の数字が入力されています。
A1が1、B1が2・・・G1が7
そこから異なった5つを選びセットを作りたいです。
21通りあることが分かるのですが、全てのパターンをExcelで抽出したいです。

よろしくお願いします。

A 回答 (3件)

>21通りあることが分かるのですが


A2セル以降に書き出しました。
i = 1
For a = 1 To 3
  For b = a + 1 To 4
    For c = b + 1 To 5
      For d = c + 1 To 6
        For e = d + 1 To 7
          i = i + 1
          Cells(i, 1).Resize(, 5).Value = Array(a, b, c, d, e)
        Next e
      Next d
    Next c
  Next b
Next a
    • good
    • 0
この回答へのお礼

ありがとうございます。
お恥ずかしながら、マクロがちょっと分からないのです。。。

お礼日時:2012/06/05 23:03

こんばんは!


検索していると、↓のURLがヒットしました。
かなりの優れものだと思います。

http://ichikura.com/excel/percombhlp.htm

さっそく、ダウンロードさせてもらい試してみました。

Alt+F8キー → 「main」を選択・実行すると
↓のような画面が表示されます。

「組合せ」を選択 → 「標本セル範囲」をクリック → A1~G1を選択 → 「リスト開始セル」
→ A3を選択 → 「抜き取り数」で「5」を選択し「実行」

これで画像のような感じに表示されました。

※ 本来であれば自分でコードを考えなければならないと思いますが、
かなり手抜きでごめんなさいね。m(_ _)m
「組み合わせパターンについて」の回答画像2

この回答への補足

質問に書き忘れてしまったのですが、順不同でも同じ数字の組み合わせは表示されないようにしたいのです。

補足日時:2012/06/05 22:30
    • good
    • 0
この回答へのお礼

ありがとうございます!
すごく使いやすいです。
補足させてもらったのですが、同じ組み合わせが表示されないようにしたいです。
でもすごく便利です。
ありがとうございました!

お礼日時:2012/06/05 22:32

No.2です!


補足に
>順不同でも同じ数字の組み合わせは表示されないようにしたいのです。
とありましたので・・・

「順列」を選択して実行されていませんか?

「組合せ」を選択 → 「標本セル範囲」をクリック → A1~G1を範囲指定 → 
「リスト開始セル」をクリック → 表示開始セルを選択 → 「抜き取り数」で「5」を選択 → 実行

これで重複なしで21種類のデータが表示されると思います。

これでもダメならごめんなさいね。m(_ _)m
    • good
    • 0
この回答へのお礼

できましたーーーー!!!
ご指摘のとおり、順列にしてました。。。
これで明日の残業が免れそうです!
ありがとうございます!!!!

お礼日時:2012/06/05 23:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!