• ベストアンサー

vbaで組み分けする方法が思いつきません

vbaを使って、10項目や15項目を全通りに組み分けしたいのです。 たとえば、1行目A1~O1までに15項目の文字列を記入します。 2行目以降A1~M1までは同じでN1とO1が入れ替わり、 同様に3行目はA1~L1、N1、M1、O1 4行目にはA1~L1、N1、O1、M1 というように、組合せ全通りを行で表示したいのです。 どなたかお助けを。

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

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

これは組み合わせと言うより、順列の問題(普通は考えられる個数の数(場合の数)を問題にするが、エクセルシートに実現したいと言うこと)だと思う。それにしても大変な数(エクセル2003まででは許容行数を越える、2007でも個数によっては素の恐れ有り。公式は下記WEB記事など多数)になる。こんなものをシート上に作っても何の役に立つの。 自分で教科書やWEBを調べ、順列の初等解説を読み、プログラムを考えたらいいでしょう。 初等的にはプログラムは、For Nextの10段や15段のネストを使う方法でしょう。 ーー 場合の作り方は http://www.kwansei.ac.jp/hs/z90010/sugaku1/kakuritu/jyunretu/jyunre.htm などまず読むこと。 ーー とりあえず、各列の値を配列の納めた方が、コード記述が楽になるかも。

その他の回答 (1)

  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.1

VBAで作るのは簡単ですが、 10項目で、10!=3628800 通り 15項目で、15!=1307674368000 通り あるのは理解してますか?

関連するQ&A