こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excelで、数字の組み合わせの合計が一定数になるパターンの抽出

Excelで、数字の組み合わせの合計が一定数になるパターンの抽出

たとえば、つぎの配列があるとします。
A(5){10,20,30,40,50}要素数が5つ1..5、{}は内容
このなかで二つ以上の組み合わせで和が60になる組み合わせを出したいとします
答えは
パタン1:1,2,3  /* 10+20+30 */
パタン2:1,5 /* 10+50 */
パタン3:2,4 /* 20+40 */

同じような処理をExcelの関数では実現できますでしょうか?

また上記のような組み合わせのパタンの総数を求める公式はありますか?
初歩的な高等数学で恐縮です。

投稿日時 - 2010-06-05 02:46:39

QNo.5945651

困ってます

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

> 同じような処理をExcelの関数では実現できますでしょうか?

VBA の既製の関数にはご質問のものはありません。
ただし、質問者さんご自身が Excel の VBA で その関数を作るのは簡単です。
リカージョンのお手本みたいなアルゴリズムでしょうね。

投稿日時 - 2010-06-05 19:44:54

お礼

ありがとうございます。
>リカージョンのお手本みたいなアルゴリズムでしょうね。
ちょっと調べてみます。VBAも慣れていないのでてこずりそうです。。

投稿日時 - 2010-06-08 12:14:43

ANo.2

このQ&Aは役に立ちましたか?

19人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

補足をお願いします。

ここでは2つ以上を選ぶ組み合わせが何パターンあるか、
その中で基準値を超える組み合わせが何パターンか、
となりますが、公式で期待しているのは後者ですか。

例えば、
>A(5){10,20,30,40,50}要素数が5つ
A(6){10,20,30,40,50,60}要素数が6つの場合、和は70(=中央値?)でしょうか。

投稿日時 - 2010-06-05 03:55:35

お礼

ありがとうございます。イメージでいうとこんなかんじです

処理1:ある表を参照

処理2:ある表からレコード組み合わせテーブルを作成 
     
処理3:処理2の表を一件ずつ和を計算する /*ここから繰り返し処理 */
     処理3-1:条件分岐 合計=1000千円ならリストへ追加 → 処理3-2へ進む
               合計≠1000千円なら次の組み合わせを計算 → 処理3へ戻る
     処理3-2:リストへ追加する → 処理3へ戻る

処理4:処理3-2で処理したリストを表示する

投稿日時 - 2010-06-08 12:13:24

あなたにオススメの質問