メンバー15人で14週間の総当りリーグ戦を開催しようと組み合わせを考えています。どなたかExcelを使って簡単に組み合わせを作成する方法を教えて下さい。

A 回答 (2件)

多分勘違いされたのでしょうが、一人ずつ交代で抜ける訳ですから、14週間ではなく15週間ですね。



総当りのリーグ戦の日程作成方法
http://okwave.jp/qa188317.html
    • good
    • 0

Excelはともかく、条件を変えないと無理だと思いますよ。


15人のリーグ戦なら、対戦組み合わせは
 15×14/2=105 通り
そのうち、同時に対戦できるのは7組ですから、14週間なら
 7×14=98 通り
となって、7試合はスケジュールが組めなくなってしまいます。
    • good
    • 0

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

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

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の関数では実現できますでしょうか?

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

Aベストアンサー

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

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

Q2つのフィールドの文字列の組み合わせ

Access2013 vba
あるテーブルの構成が以下のようになっていますが
□テーブル構成
・ID(Long)
・建物NO(外部キー/Long)
・部屋番号(文字列)

この時、建物NOと部屋番号の組み合わせで、一意の値にしたい場合、どのようにしたら良いでしょうか。

よろしくお願いします。

Aベストアンサー

建物NOを文字列化して、数字以外で、かつ、部屋番号に使わない文字(例えばアンダーバー)を間に挟んで、部屋番号と連結して、文字列を生成する。

例:

建物NO:125、部屋番号:A301⇒125_A301
建物NO:128、部屋番号:202⇒128_202
建物NO:1282、部屋番号:02⇒1282_02
建物NO:211、部屋番号:103⇒211_103
建物NO:21、部屋番号:1103⇒21_1103

QExcelで組み合わせ!8人で3コースを巡回するパターンを作成したい

Excel初心者です
8人でA,B,Cの3コースを巡回する組み合わせを作成したいのですが、
例えば、Aコースが1番目の人と2番目の人が組で
以下Bが3&4,Cが5&6、で7&8は休みでスタートします
こういうのを一つのパターンとして、次回は同じコースを回らずかつ
違う人と組んでさらに休みも同じように振り分けたいのです

補足として、1年間の日程で巡回するのは決まった曜日です
組み合わせとして1番目の人は他の2~7番目の人と組む形が
できるようにしたいです。(8人全員に当てはまります)

ちなみに、コースが三つなので8×3で
24パターンあるってことですよね
休みを含めると8×4で32あることになるのかな?

よろしくお願いします

Aベストアンサー

補足です。

> 2520通りということですが

これは8人の組合わせの数です。
4組が休みを入れた4つのコースを取る、というのは
24通りありますから

2520×24となります。これは一日に取り得るパターン
の数です。
これを次回のコースの取り方を考慮したら順列組合せ
となり、2520の24乗となり、いや、24の2520乗かな?
分からない・・・その中から良いものを探すというこ
とです。まあ、あっという間に天文学的数字を超えます。

全宇宙の素粒子の数を集めても10の74乗程度でしか
ありません。

これは答えの無い問題、と私は言い切ります。少しずつ
昔を思い出してきました。
ベストでは答えがありませんが、ベターな答えは出せ
ます。最低で2千万円のプロジェクト、答えに欲出せば
1億円のプロジェクトと見積もります。それでもベター
な回答しかえられません。

しかし順列は諦めるという割きりがあります。大して
意味ないでしょう。得られない答えなんだから。
従って、私なら2520×24の組合せを作って、乱数で今回
は、これにすると決めます。次回は1度使ったパターンを
消して、残りで乱数で選びます。たまたま休みが続く人
が出ても仕方が無い、とせざるを得ません。あるいは
休みが続かない、だけを条件に選び直しはありそうですね。

補足です。

> 2520通りということですが

これは8人の組合わせの数です。
4組が休みを入れた4つのコースを取る、というのは
24通りありますから

2520×24となります。これは一日に取り得るパターン
の数です。
これを次回のコースの取り方を考慮したら順列組合せ
となり、2520の24乗となり、いや、24の2520乗かな?
分からない・・・その中から良いものを探すというこ
とです。まあ、あっという間に天文学的数字を超えます。

全宇宙の素粒子の数を集めても10の74乗程度でしか
ありません。

...続きを読む

Q組み合わせの検索方法

数字の組み合わせ毎に情報を管理しようと思うのですが、
以下のようなテーブル構成を考えました。

CREATE TABLE COMBINATIONS (
COMBINATION_ID NUMBER,
INFO VARCHAR2(100)
);

CREATE TABLE ELEMENTS (
COMBINATION_ID NUMBER,
ELEMENT_NUMBER NUMBER
);

例としては:

<COMBINATIONS>
COMBINATION_ID INFO
-------------- ----
1 ABC
2 DEF
3 GHI

<ELEMENTS>
COMBINATION_ID ELEMENT_NUMBER
-------------- --------------
1 1
1 2
2 100
2 200
3 100
3 200
3 300

です。
1,2の組合せの場合→ABC
100,200の組合せの場合→DEF
100,200,300の組合せの場合→GHI
のような具合です。

このように、数字の組合せを条件にINFOを
取得するには、どのようなSQL文がよいでしょうか。
データベースはOracleです。

数字の組み合わせ毎に情報を管理しようと思うのですが、
以下のようなテーブル構成を考えました。

CREATE TABLE COMBINATIONS (
COMBINATION_ID NUMBER,
INFO VARCHAR2(100)
);

CREATE TABLE ELEMENTS (
COMBINATION_ID NUMBER,
ELEMENT_NUMBER NUMBER
);

例としては:

<COMBINATIONS>
COMBINATION_ID INFO
-------------- ----
1 ABC
2 DEF
3 GHI

<ELEMENTS>
COMBINATION_ID ELEMENT_NUMBER
-------------- -------------...続きを読む

Aベストアンサー

>2.仮想テーブルのCOMBINATION_IDで<ELEMENTS>を検索し、
>組み合わせ全てを持ち、組み合わせ以外を持たない
>COMBINATION_IDで第2仮想テーブルを構成する。

確かにできますけど・・・
数が不定だと、ここのSQLをどうするかなんですよね。

ここの抽出方法が確定するんでしたらインラインクエリー使わなくても普通にSQLだけで抽出できます。

たとえば、100,200の2つの場合、

select INFO from COMBINATIONS, ELEMENTS
where COMBINATIONS.COMBINATION_ID = ELEMENTS.COMBINATION_ID
group by INFO
having sum(decode(ELEMENT_NUMBER, 100, 1, 200, 1, 0)) = 2;

とかすればできますよ。
#decodeのところがねぇ・・・

Q組み合わせパターンを作りたいのですが、どのようにすれば効率的ですか?

こんにちは。

現在、以下のアンケートがあります。

         選択肢(Aはよい、Bはふつう、Cは悪い)
問1 ××× A B C
問2 ××× A B C
問3 ××× A B C



問11 ××× A B C

ここで、問1~問11までの設問全体の組み合わせのパターンがどれだけどんなものがあるのか一気に出したいのですが、どのような方法がありますでしょうか?もし、ソフトがあればご紹介して頂ければ幸いです。

例えば、
パターン1としては、問1~問11までが全てAというパターン、
パターン2としては、問1~問11までが全てBというパターン、
パターン3としては、問1~問11までが全てCというパターン、
パターン4としては、問1~問10まではAで問11だけがBというパターン



など、3の11乗パターン存在すると思ってます。
こうしたパターンの一覧表を一気に作りたいのですが、どのようにすればよろしいでしょうか。

ご教示頂ければ幸いです。宜しくお願い申し上げます。

Aベストアンサー

下記のプログラムをVB6で作ってみました。(あまりきれいではないですけど)pen4-2.8G メモリ512MBで90秒ほどで修了しました。 エクセルのことはよくわかりませんがそんなに難しくはないと思います。

Private Sub Command1_Click()
Dim str_out As String
s_time = Now()
str_out = ""
For i1 = 1 To 3
For i2 = 1 To 3
For i3 = 1 To 3
For i4 = 1 To 3
For i5 = 1 To 3
For i6 = 1 To 3
For i7 = 1 To 3
For i8 = 1 To 3
For i9 = 1 To 3
For i10 = 1 To 3
For i11 = 1 To 3
str_out = i11 & i10 & i9 & i8 & i7 & i6 & i5 & i4 & i3 & i2 & i1
Debug.Print str_out
str_out = ""
Next i11
Next i10
Next i9
Next i8
Next i7
Next i6
Next i5
Next i4
Next i3
Next i2
Next i1
Debug.Print s_time
Debug.Print Now
End Sub

下記のプログラムをVB6で作ってみました。(あまりきれいではないですけど)pen4-2.8G メモリ512MBで90秒ほどで修了しました。 エクセルのことはよくわかりませんがそんなに難しくはないと思います。

Private Sub Command1_Click()
Dim str_out As String
s_time = Now()
str_out = ""
For i1 = 1 To 3
For i2 = 1 To 3
For i3 = 1 To 3
For i4 = 1 To 3
For i5 = 1 To 3
For i6 = 1 To 3
For i7 = 1 To 3
For i8 = 1 To 3
For i9 = 1 To 3
For i10 = 1 To 3
For i11 = 1 To 3
str_out = i11 &...続きを読む

QMYSQL + Access の組み合わせ

SQL Server+Access.adpを使った、クライアントサーバー型のシステム
はみたことがあるのですが、
それを MYSQL + Accessでは実現できるのでしょうか?

以前、AccessをインストールしたPCから、ODBCでMYSQL接続して使ったことは
あるのですが、ACCESSで作成されたフォームアプリの接続先がMYSQL、という
のは可能なのかな?と思い質問しています。
Access そのものは未搭載のマシンに、Accessで作ったアプリをインストールして、
そこから、MYSQLに接続するイメージのものが可能かどうかをお尋ねしているつもりです。

どなたかご教授願います。

Aベストアンサー

Runtime版を作ろうとしているのだろうと思います。
最初の一歩でつまずくかも?
http://infith.com/system/database/mysql_odbc_win7_64bit/
Access2010 の場合ですがファイルの拡張子を、accdr にすると
Runtimeモードで起動できます。

Qvba  組み合わせパターン表示

1,2,3,--,n-1,nからm個とる組み合わせのパターンを
セル(1,1)から(nCm、nCm)に表示させる処理をVBAで記述
したいのですが、どうすればいいのでしょうか。
よろしくお願いします。

Aベストアンサー

再帰呼び出しのアルゴリズムは「自分自身を呼び出す」わけですから、普通の上から下へ
読んでいくフローとはひと味違って、考えにくいところがあります(実は私もしばらくや
ってなかったので今回少し手こずりました)。

各行の意味を書きます。


Const nStr As String = "あいうえおかきく" '←n個の文字列
Const m As Integer = 3 '←取り出す個数
Dim n As Integer '←ご質問文のn
Dim rStr As String '←m個取り出した文字列を結合したもの
Dim mRow As Integer '←エクセル表へ書き出す際の行番号
Dim Nest As Integer '←再帰呼び出しの深さ=rStrの何文字目に取り出すのか
'-----------------------
Sub combi()
n = Len(nStr) 'nStrの文字列長をnに代入
If m > n Then Exit Sub 'nよりmが大きければ終了
rStr = String(m, " ") 'rStrにm個の空白を代入
Cells.ClearContents '書き出す表をクリア
mRow = 0 '書き出す行番号0クリア
Nest = 0 '再帰呼び出し深さ0クリア
combiPr (0) 'サブルーチン combiPr を引数0で呼び出し
End Sub
'-----------------------
Sub combiPr(n1) 'サブルーチン開始 引数はその時点での開始位置(nStrの何文字目まで処理したか)
Dim mCol As Integer '←エクセル表へ書き出す際の列番号
For nn = n1 + 1 To n - m + Nest + 1 'nnを開始位置の次の文字から始めて残りの文字数の手前までFor~Nextを繰り返す
Nest = Nest + 1 '再帰呼び出しを1カウントアップ
Mid(rStr, Nest, 1) = Mid(nStr, nn, 1) 'rStrのNest番目にnStrのnn番目を代入
If Nest = m Then 'rStrに取り出したのがm文字目なら
mRow = mRow + 1 'エクセル表の次の行へ
For mCol = 1 To m 'rStrの1文字目からm文字目まで書き出す。
Cells(mRow, mCol).Value = Mid(rStr, mCol, 1)
Next
Else 'そうでなければ、つまり現在の開始位置(=nStrの何文字目まで処理したか)がm個まで達してなければ
Call combiPr(nn) '現在の到達位置(nStrの何文字目まで処理したか)にnnをセットしてcombiPrを呼び出す(再帰呼び出し)
End If
Nest = Nest - 1'再帰呼び出しを1後退
Next
End Sub


手順は原始的なものです。
あ~く まで書かれたカードを8枚ならべて3枚抜き出すことを考えればお解りになるで
しょうか。

あ を一枚抜き出し、
い を抜き出し2枚目に置きます。
う を抜き出し、3枚目とします。←これを く まで繰り返します。

次に、い を戻して う を新たな2枚目とします。
え を抜き出し、3枚目とします。←これを く まで繰り返します。

の繰り返し・・・・

を行っているわけです。

ポイントは、1枚目を抜き出すのは か までだという点です。
き まで抜き出したら(く までしかないので)3枚目のカードがなくなります。
同様に2枚目は き までしか抜き出してはいけません。
これが「For nn = n1 + 1 To n - m + Nest + 1」の「n - m + Nest + 1」の部分の意味です。

テキストベースのみの説明なので伝えにくいのですが、不明な点があったら補足説明しますの
で、またおたずねください。

再帰呼び出しのアルゴリズムは「自分自身を呼び出す」わけですから、普通の上から下へ
読んでいくフローとはひと味違って、考えにくいところがあります(実は私もしばらくや
ってなかったので今回少し手こずりました)。

各行の意味を書きます。


Const nStr As String = "あいうえおかきく" '←n個の文字列
Const m As Integer = 3 '←取り出す個数
Dim n As Integer '←ご質問文のn
Dim rStr As String '←m個取り出した文字列を結合したもの
Dim mRow As Integer '←エクセル表へ書き出す際の行番号
...続きを読む

QINDEX関数とMATCH関数を組み合わせてできません

早速ですが質問です2つのエクセル表で


  A B         C       D
1 青通山岳     11L9R3
2 青通山岳     11L9R4
3 青通山岳     11L9R5
4 青通山岳     12
5 青通山岳     13
6 池監東     3R12R5R1
7 池監東     3R12R5R2
8 池監東     3R13
9 池監東     3R14
10 池監東     3R15
というファイルと
  A B        C       D
1 青通山岳     11L9R4     台41-034
2 青通山岳     11L9R5     台41-034
3 青通山岳     11       台41-034
4 青通山岳     13       台41-034
5 池監東     3R12R5R1    台41-034
6 池監東     3R       台41-034
7 池監東     3R13      台41-034
8 池監東     3R       台41-034
9 池監東     3R15      台41-034
というような感じの二つの別のファイルがあり
上のファイルと下のファイルのABC項目が一致するものに下のファイルのD欄を反映させたいのですが何かイイ方法はないでしょうか?上のファイルのD欄には何も入力されてません。
データが半端ない量なので宜しくお願いします。

早速ですが質問です2つのエクセル表で


  A B         C       D
1 青通山岳     11L9R3
2 青通山岳     11L9R4
3 青通山岳     11L9R5
4 青通山岳     12
5 青通山岳     13
6 池監東     3R12R5R1
7 池監東     3R12R5R2
8 池監東     3R13
9 池監東     3R14
10 池監東     3R15
というファイルと
  A B        C       D
1 青通山岳     11L9R4     台41-034
2 青通...続きを読む

Aベストアンサー

>INDEX関数とMATCH関数を組み合わせてできません

VLOOKUP関数が良いのではないでしょうか。
その前に質問内容に疑問点があります。「下の方の(ファイル2)の
”D”の内容を検索したいのに何故9行とも”台41-034”なのでか?」

○ファイル1,2共A,B,C列を接続して”F列”に入れます。
 (F2 に次の式を入れて下方向にコピーする =A2&B2&C2 )
○ファイル2の D列をG列にコピーする
○ファイル2のF2~G10をドラッグし「表示」「名前」で表に適当な名前をつける(例えば”B表”)
○ファイル1の G2に次の式を入れ,下へコピーします。
 =VLOOKUP(F2,B表,2,0)
○検索結果をE列に”値”のみコピーする。
 (ファイル1のG2~G11をE2に”形式を選択して貼り付けで”値”の み貼り付け)  これでやってみて下さい。

Q数字の組み合わせパターンの取得について

a組 1,2,3,4,5,6,7,8,9
b組 1,2,3,4,5,6,7,8,9
c組 1,2,3,4,5,6,7,8,9

上記のような各組から、それぞれ1つずつ番号を選択し
出来上がる組み合わせパターン全てを取得したいのですが
どうしてもうまく取得できません。
各組の番号の重複はしないように取得したいので
9*8*7=154の組み合わせ全てを取得したいです。
(計算合ってますかね・・・)

例○:1,2,3 2,1,3 ・・・
例×:1,2,1 2,4,4 ・・・

質問も初めてなので、書き方など不明な点や不手際があれば
あわせてご回答いただけると感謝です。

Aベストアンサー

失礼しました。そう例示がありましたね
であれば、504通りになるのかな?

<?
$x=1;
for($i=1;$i<=9;$i++){
for($j=1;$j<=9;$j++){
if($i==$j) continue;
for($k=1;$k<=9;$k++){
if($j==$k or $i==$k) continue;
print $x++.":".$i.",".$j.",".$k."<br>\n";
}
}
}
?>

Qマイクロソフトのアクセスでいくつかのデータと組み合わせて、

マイクロソフトのアクセスでいくつかのデータと組み合わせて、
数値を並べたり、○×をつけることは可能でしょうか?

アクセス初心者です。
もし分る方がいたら教えていただきたいです。

(1)【3月の来店者】
Aさん
Bさん
Cさん
Dさん

(4)【3月のA購入者】
Aさん
Cさん
Dさん

(5)【3月のB購入者】
Cさん
Dさん

(6)【来店者の来店回数】
Aさん 1
Bさん 4
Cさん 7
Dさん 2


上記データを使って下記のようなデータベースを作りたいと考えています。

来店者 A購入 B購入 来店回数
Aさん ○ × 1
Bさん × × 4
Cさん ○ ○ 7
Dさん ○ ○ 2



(1)来店者から(2)Aを買った人の抽出や
(1)来店者の(4)来店回数を出すのは
選択クエリを使いだすことができたのですが
このようにすべての来店者のデータをリスト化することは可能でしょうか?


すべてのデータ抽出後にIF関数などを使いエクセルでなら行えるかもしれないのですが
データが180万行あるのでアクセス内で行えたら嬉しいです。


説明がわかりにくくて申し訳ないです。。。
もし分る方がいたら助けていただきたいです。

宜しくお願いいたします。

マイクロソフトのアクセスでいくつかのデータと組み合わせて、
数値を並べたり、○×をつけることは可能でしょうか?

アクセス初心者です。
もし分る方がいたら教えていただきたいです。

(1)【3月の来店者】
Aさん
Bさん
Cさん
Dさん

(4)【3月のA購入者】
Aさん
Cさん
Dさん

(5)【3月のB購入者】
Cさん
Dさん

(6)【来店者の来店回数】
Aさん 1
Bさん 4
Cさん 7
Dさん 2


上記データを使って下記のようなデータベースを作りたいと考えています。

来店者 A購入 B購入 来店回数
Aさん ○ × 1
Bさん × × 4
C...続きを読む

Aベストアンサー

Bさん 3回
Bさん 1回

Bさん 4回
とさせるのがクエリでは簡単ですが、
こういう重複している人を(重複クエリかで)先に確定しておくのも手です。

Bさん 3回 2009年
Bさん 1回 2010年
とか違いのわかる項目があれば。
なければ、
Bさん 1 3回
Bさん 2 1回
と、とりあえず区別できる項目を追加し
別ものとして処理。(重複しないものはすべて1)

回答のため、現在の状況の提示をお願いします。


人気Q&Aランキング