• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:簡単そうで難しい計算)

簡単そうで難しい計算の組み合わせ問題

このQ&Aのポイント
  • A1に3、A2に4、A3に5、A4に7、B1に6、B2に7、B3に12、B4に13、B5に16、C1に1、C2に6、C3に7、C4に8、C5に9、D1に12、D2に13、D3に14、D4に20、E1に13、E2に15、E3に16の数値が入力されています。それぞれ列の最小数値からA+B+C+D+Eの加算合計値を表示できないでしょうか?
  • また、合計値と共に3+6+1+12+13や3+6+1+12+15など、どの数値を組み合わせたかも知りたいです。グループ内の数値の組み合わせ点数を知りたいため、このような問題に取り組む必要がありますが、理解が難しいため困っています。
  • ご教示いただけると幸いです。よろしくお願いいたします。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 まず、G1セルに次の数式を入力して下さい。 =IF(ROW()>COUNT($A:$A)*COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E),"",SMALL($A:$A,MOD(INT((ROW()-1)/(COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E))),COUNT($A:$A))+1))  次に、H1セルに次の数式を入力して下さい。 =IF(ROW()>COUNT($A:$A)*COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E),"",SMALL($B:$B,MOD(INT((ROW()-1)/(COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E))),COUNT($B:$B))+1))  次に、I1セルに次の数式を入力して下さい。 =IF(ROW()>COUNT($A:$A)*COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E),"",SMALL($C:$C,MOD(INT((ROW()-1)/(COUNT($D:$D)*COUNT($E:$E))),COUNT($C:$C))+1))  次に、J1セルに次の数式を入力して下さい。 =IF(ROW()>COUNT($A:$A)*COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E),"",SMALL($D:$D,MOD(INT((ROW()-1)/(COUNT($E:$E))),COUNT($D:$D))+1))  次に、K1セルに次の数式を入力して下さい。 =IF(ROW()>COUNT($A:$A)*COUNT($B:$B)*COUNT($C:$C)*COUNT($D:$D)*COUNT($E:$E),"",SMALL($E:$E,MOD(ROW()-1,COUNT($E:$E))+1))  次に、L1セルに次の数式を入力して下さい。 =IF(COUNT($G1:$K1)=5,SUM($G1:$K1),"")  そして、G1~L1の範囲をコピーして、同じ列の2行目から1500行目にかけての範囲に貼り付けて下さい。  以上です。

ringup
質問者

お礼

ばっちり出来ました!! VBAじゃなくても計算式で出来るんですね。 しかもかなり大変そう・・・ お手数をおかけして申し訳ございませんでした。

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

コンなのは、やろうとすれば、VBAでやる必要があり、VBAを勉強してください。質問どおり、各列から1つ筒取り出して、合計を計算するのかな。合計など5項目だからたいしたことない。 >その組み合わせの加算値を出す方法はわかりませんでした と言うよりも組み合わせそのものを数え上げることが、コンピュターでないと難しいし、列数とその列の行数が多いと、膨大な組み合わせ数となり、その組み合わせを作るのもコンピュターでも時間がかかる。 こんなの常識。 >それぞれ列の少ない数値から の意味不明。 ーー VBAなどなら、泥臭く(と言うことは誰でも思いつくということ) for i=1 To 4 For j=1 To 5 For k=1 To 5 For l=1 To 4 For m=1 To 3 s=Cells(i,"A")+Cells(j,"B")+Cells(k,"C")+Cells(l,"D")+Cells(m,"E") Next m Next l next k next j Next i を行い、Cells(i,"A")、Cells(j,"B")、Cells(k,"C")、Cells(l,"D")、Cells(m,"E")の数と とSの表示をシートのセルにでも書き出せばきる。 加えて最大か最小なら、各列の最大だけ、最小だけを足せば良いのでは。 時どきこんな組み合わせの問題をエクセルのカテゴリで質問するか、エクセルしかやったことのない人には無理。何に使うのか判らない。組み合わせ問題は数学に詳しい人の見るカテゴリ出すべきと思う。

回答No.3

G1セル =MOD(INT((ROW()-1)/300),4)+1 H1セル =MOD(INT((ROW()-1)/60),5)+1 I1セル =MOD(INT((ROW()-1)/12),5)+1 J1セル =MOD(INT((ROW()-1)/3),4)+1 K1セル =MOD(INT((ROW()-1))/1,3)+1 下へ1200行までオートフィル ↑意味が分かれば 以下の数式と一緒にしてもOK M1セル =INDEX(A:A,G1) 右へ下へオートフィル

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.2

各列に例えば =MIN(A1:A4) とすれば、その列の最小値が出ますよね。 後は出てきた値を、=A5+B5+・・・とかと足せばいいだけの話なんじゃ?

ringup
質問者

補足

話の流れで最小値からと記入しましたが、最小値からでなくてもかまわないんです・・・ 全組み合わせをその方法でするととんでもない労力を使いそうです・・・ 全組み合わせで何通りだったか忘れましたが莫大な数です

  • MRT1452
  • ベストアンサー率42% (1391/3293)
回答No.1

全組み合わせを行うということであれば、VBAを組んだ方が良い様な気がします。 (以後、汎用的に使うなら尚更。)

ringup
質問者

補足

やはりVBAですか・・・ 未知の領域です・・・

関連するQ&A