• ベストアンサー

合計値が同じ組み合わせ

下記の様な事ってEXCELの関数を使って、出力は可能でしょうか? 可能でしたら是非とも教えてください。 例)B列の1行目から10行目にそれぞれ数字が入力されていて、そこから4つのセルを抜き出し、合計値が30となる組み合せ全てを抽出する。

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

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

マクロ(VBA)を使うことになるんでしょうけど、おそらくそれはナップザック問題 http://hwb.ecc.u-tokyo.ac.jp/current/CDD1B8ECBDB82FA5CAA5C3A5D7A5B6A5C3A5AFCCE4C2EA.html になるので、厳密にやろうとすると、行数が増えるにつれて猛烈に解く時間がかかります。 (通常は)テストの点数は能力の「おおまかな」指標にしかならないですから、その点数に関して厳密な条件を求めても(通常は)仕方がありません。 もっと単純に、テストの点数順に並べ替えておいて、上下それぞれから2人ずつ抜き出して4人組を作っていくのではどうですか。

tomjap
質問者

お礼

お礼の方大変遅くなりまして申し訳ありません。何とかURLの情報を駆使して解決しました。ありがとうございます。

その他の回答 (1)

  • molly1978
  • ベストアンサー率33% (393/1186)
回答No.1

マクロを使えば可能ですが、関数では無理です。

tomjap
質問者

補足

早速のご回答ありがとうございます。実際は複数人に実施したテストの点数表があるのですが、それを均衡が取れるようにうまくチームわけしたいと思っています。何か良い方法があればと思っているのですが・・・

関連するQ&A

  • エクセルで決められた合計になる組み合わせを作成

    エクセルを使用し、決められた合計になるような数値の組み合わせを表示するようにしたいのですが、どのようにしたらよいか皆さん教えて下さい。 例えば、 B列に 100・50・70・62・58・70・・・と数値が入力されています。 C1に300と入力しておきます。 300になる組み合わせはどれとどれ・・・なのかというものを作成したいです。 多数ある場合は、全ての組み合わせを表示したいです。 表示例として B3とB5とB15・・・を合わせると合計C1が300になる、又は298又は302になるという表示をしたいのですがどのようにしたらよいでしょうか。 A列にコードを入力しているので数値の重複はありません。 宜しくお願い致します。

  • エクセル データ抽出と合計の方法がありますか。

    エクセル データ抽出と合計の方法がありますか。 下記のようなデータがあるとします。 A列  B列 10  111 20  222 30  111 40  111 50  333 結果を D列  E列 111  80 222  20 333  50 としたいです。 つまりB列から存在する数字列を抽出し、それに該当するA列の合計を出したい。 D列へB列に存在する数字列を手入力し、 E列へ =SUMIF(B:B,D1,A:A) と入れておいて表示されるところまでしたのですが、 「D列へB列に存在する数字列を手入力」を手入力ではなく関数で抽出してくることは可能でしょうか。 何卒ご教示いただけますようお願いします!!!

  • Excelの組み合わせをカウントしたいです。

    こんにちは。 Excelの組み合わせをカウントしようと試行錯誤したのですが 未だに完成出来ないので質問させて頂きます。 A列に1から10までの数字がランダムで500行ほどあり、 A列の中で1と言う数字があった場合、 その下のセルに2があればその組み合わせを1とカウントし、 B列に合計を表示したいのですが、これは可能でしょうか? どうかご教授下さいますよう、宜しくお願い致します。

  • Excel 合計の出し方について

    Excelのカウントについて質問です。      A列   B列 1行目 1-2-3  1200 2行目 2-3-1  800 3行目 4-5-1  400 4行目 3-2-1  2000 5行目 1-3-2  500 6行目 答え→ ( 4500 ) 上記の表があり、B列6行目にA1~A5の内容を確認し、 条件に応じた計算結果を出したいです。 条件としては、1-2-3、2-3-1、3-1-2など、同じ数字で構成されているものであれば、順番が違っていても同じものとみなして合計します。 ※ちなみに1-2-3は文字列です。 ※上記の表では、1-2-3でできる組合せの合計で4500という答えを出してます。 思いつくままに関数を書いてみました。 =SUM(SUMIF(A1:A5,{"1-2-3","1-3-2","2-1-3","2-3-1","3-1-2","3-2-1"},B1:B5)) これでもできなくはないのですが、組合せをたくさん書くのがとても面倒で、 仮に、1-2-3-4 や、1-2-3-4-5 など組合せが多くなった場合はとても上記のやり方では対応できません。また、組合せは1桁だけでなく2桁(1-3-10)、3桁(5-80-100)も存在します。 効率良く書ける方法があればおしえてください。

  • エクセル関数で条件に一致したものの合計

    エクセル関数で条件に一致したものの合計 を計算することはできますでしょうか? SUMIFを使えばできるような気もするのですが、どうやったら良いのか分かりません。どうか教えてください。 やりたいことは、、 A列に1 or 2が入ってます。下記みたく。 1 2 2 1 2 1 B列に数字が入っていて、A列が2である行のB列の合計を求めたいのです。 よろしくお願いします。 -- エクセル2003

  • このようなエクセルの関数の組み合わせはありますか

    エクセルの関数についての質問です。 たとえば、A列とB列にタテに10個ずつのデータ(A1:B10)があって、 (1)A列とB列の同じ行のデータの小さいほうを選んだあと、 (2)選んだ10個のデータを合計したい のですが、そのような関数の組み合わせを作る(一つのセルに一気に表示する)としたら、どのようなものになるのでしょうか。MIN関数と、SUM関数を組み合わせればいいような気がするのですが、うまくいきません。 ご存知の方ならすぐにわかるようなことでしょうが、どうもわかりません。どなたか教えていただけないでしょうか。

  • ある条件のセルの合計を出したい

    IF関数の応用だと思うのですが、次のような時に合計は求められるのでしょうか。 A列の1行目から5行目までに「東京」と「大阪」がランダムに入っている。 B列の1行目から5行目までに数字が入っている。 このとき「東京」のセルのとなりにあるB列の数字を合計したいのですが、 どのようなやり方ができるのかお教えください。お願いします。

  • セルに入力した数値の組み合わせを抽出する方法

    セルに入力した数値の組み合わせを抽出する方法 色々探したのですが、よく分からないので教えてください。 エクセルシートのB3:E6の16個の各セルに、任意に数値を入力していきます。 その入力した数値の組み合わせを全て抽出したいと思っております。 (抽出先はどこでもいいです。) 希望としてはB3:E3の4個の数値は必ず入った組み合わせを作りたいです。 関数でもVBAでも何か方法が有れば教えてください。 宜しくお願い致します。

  • エクセルで2つの条件に合うセルの合計

    エクセルで2つの条件に合うセルの合計 こんにちは。 例えば、以下のようにシート上にあるとします。 1 上 100 2 上 200 1 下 150 2 下 500 1 下 30 A列は1か2の数字 B列は上か下の文字 C列は数字 このシートでA列が1でかつ、B列が下の場合のC列を合計したいのですが、SUMIF関数でできるのでしょうか?他の関数でもかまいません。自分で関数を作るのはなしでお願いします。 (動作が重くなるので) ちなみに、上記の場合は、3行目と5行目が該当しますので、150+30=180となります。 -- エクセル2003

  • 文字を削除して合計 Excel2007

    Excelで数字を含む文字列から数字のみを取り出し、合計する方法を考えているのですが、わかりません。  |..A..|..B..|..C.|..D.| .2|50%|30%|20%|10%| という風にセルに記入している場合、E2に全体としての割合を表す関数を作りたいと思っています。 とりあえず各セルから%を除いて数字のみを表示する関数を作りました。 =LEFT(A2,LEN(A2)-1) 例はデータが少ないのですが、実際は多数のデータを使うつもりなので、全ての値を足すのでなく、 指定した範囲内の値を合計するようにしたいと思っています。 作業列を使えばできるかもしれませんが、使わない方向でやりたいので、宜しくお願いします。 ちなみに、各割合は、別のシートから=で値を入力しています。