• 締切済み

EXCELでの組合わせ 内容の表示について

17名のパート登録者より6名を選抜し、1日8回の勤務に割り当てる一月分の勤務表を作成しています。 IF文をNESTして 17C6*8*一ヶ月を総当りで出す 均等にする為、8*30(一ヶ月)/17回、乱数によりセルに個々の名前を書き出し、全てのセルデータ個数が6になるまでLOOP(多少の差はCUT)という方法 どなたか 実装のアドヴァイスをいただけたら幸いです。

みんなの回答

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

約2日回答が出ませんね。難しいですね。確率論などから言えば、下記は全く駄目な回答だと思いますが、空で240組6人の組み合わせを上げろといわれると、苦痛ですよね。それで上げてみますのでご検討下さい。エクセルで組み合わせの問題の質問が偶に上がりますが、エクセルは無力なように思います。 考えかたとしては出動回数平等を優先の考えです。 (1)A列に1-17の値が入ったセルを85個作る    17x85=1440(ほぼ)    A1に関数式=INT((ROW()-1)/85)+1を入れる。    この式をA2:A1440に複写する。   (A1から遠いセルまでの複写のやり方は下記(6)に    述べた方法参照)    A列の数字は、担当者の背番号だと考えてください。 (2)自分自身のセルに、形式を選択して貼りつけ-値を   行い関数式を消し値だけのセルにする。 (3)B列B1に=RAND()を入れて、B2:B1440に複写する。 (4)B1:B1440について、自分自身のセルに、形式を選択   して貼りつけ-値を行い関数式を消し値だけのセル   にする。 (5)A1:B1440を範囲指定し、B列の値で、並べ替えする。    これで1-17はシャッフルされたつもり。 (6)C1に=INDEX($A$1:$A$1440,(ROW(C1)-1)*6+COLUMN(C1)-2,0)と入れて、H1まで横方向に式を複写する。 C1:H1を範囲指定して、編集-コピーその後B1をポイントして名前ボックスにH240といれ、SHIFTキーを押しつつENTERで、B1:H240が範囲指定されるから、編集-貼りつけ。これでA列の1列がC-Hの6列に折り畳まれる。 (7)I列に=SUM(IF(COUNTIF(C1:H1,C1:H1)=1,0,1)) と入れてSHIFT+CTRL+ENTER(3キーを同時に押す)。配列数式。 I1をI2:I240に複写する。 I列の値が0の行はそのまま採用できる。 2,3,4・・の行は約半数出てきてしまうようである。 2,3,4・・の行は同一人が出てきて、組み合わせとして使えない。それで人間が修正する。 (8)修正ルールとして、完璧なものは思いつかなかったが一法として下記を記す。 別に1-17の1セットを手持ちをメモしておく。 ある行で同一数字ダブリがいると、その数字を次のダブリ行のダブリ数字に置き変える。出来れば相互に置換えて見る。あるいは、上から下へ置換え、下から上へ置換えやってみる。 それで上手く行けばそれでよし、上手くいかない時は1-17の手持ちの先頭から適当にダブらない数字を補充し、ダブリ分は次回に出来るだけ早い機会に使うよう先頭に待機させる。 1-17のワンセットの予備で足りない時は第2回目の手持ちとして1-17を繰り出す。 最後に残った番号分だけ(1回以内のはず)出動回数の不平等(出動が少ない)が発生するが、目をつぶる。 (9)1つの行でダブリセルを色を付ける方法を記します。ダブリ潰し洩れを防ぐのに使うと良いと思う。 C1:H1を範囲指定 書式-条件つき書式-数式が-数式を指定。 書式を指定して(例えばセルのパターンで色を指定し、セルに色を付ける) =COUNTIF($C1:$H1,C1:H1)>1と入れて、SHIFT+CTRL+ENTER(3つのキーを同時に押す。(配列数式) C1:H1をコピーし、C2:H240を範囲指定し、形式を選択して貼りつけ-書式を行う。これでダブリ数字セルに色がつく 。これか1つも残らないように修正するわけです。」

bluemonk
質問者

お礼

ご回答、ありがとうございます。 早速、検討させていただきたく思います。 また追加質問にてお手を煩わせるかとも思いますが、何卒、宜しくお願いいたします。

関連するQ&A

  • 乱数を使うがバランスよくデータ取得したい

    私の職場は交替制です。通常の昼勤務と夜勤があります。毎日一人ある当番を昼勤務者の中から決めたいのです。 社員に番号を割り当てたExcelの勤務の予定表から昼勤務者を抽出するところまでは完成しています。その中から乱数を使って一人選びたいのですが、乱数だけですと例えば一ヶ月の中である社員は6回当番で、ある社員は1回当番というように不公平が生じてしまいます。昼勤務の数は社員によって異なりますし、完全に同回数にはできませんが、なるべく大きな差が生じないようにすることはできますか。また、同一の社員の当番が連続したり短期間に集中しないようにもしたいです。理解しづらいかもしれませんがどんなヒントでも構いませんのでよろしくお願いします。 乱数はExcelの関数ですが、その他はVBAで作っています。

  • EXCEL 表計算について

    EXCEL勤務表より月毎の男女の比率を求めたいのです。 *1日当たりの勤務時間が各自違います。 *1カ月当たりの休日が各自違います。 *入社退社の入れ替わりは月10人以上発生してます。 今、使っている勤務表(EXCELファイル)は縦軸(氏名)横軸(日付)で休日が各々’ヤ’と表示されている簡単なものです。 (例)          1 2 3 4 5 6 7・・・・・・・・31日 Aさん(9:00~14:00) ヤ Bさん(5:00~17:00)      ヤヤ Cさん(12:00~18:00)  ヤ      ヤヤ Aさんは勤務時間9:00~14:00で1回/週 休み、休憩0です。 Bさんは勤務時間5:00~17:00で2回/週 休み、休憩1時間です。 Cさんは勤務時間12:00~18:00で3回/週 休み、休憩1時間です。 様々な勤務体系の人達(200名)が居て労働時間から男女の比率を求める為にはどうしたら良いかご指導を宜しくお願い致します。

  • エクセルで1~5の組み合わせを表示させたい。ただし、たとえば、1,2と

    エクセルで1~5の組み合わせを表示させたい。ただし、たとえば、1,2と2,1は同じものとして片方は表示させない。

  • 12名二人一組の勤務シフトの作り方

     よろしくお願いします。 1、12名の二人一組で、一日の勤務は朝、昼、夜の三組となります。  夏時間の朝は7時から13時、昼は13時から17時、夜は17時から21時。 2、 朝の翌日は夜の勤務、昼の翌日は朝の勤務、夜の翌日は昼の勤務という条件。つまり、夜の翌日の朝の勤務と、隔日ごとの勤務も不可条件となります。   三勤務三休を原則とします。   12名が三か月ごとに朝夜昼、昼朝夜、夜昼朝へ各自シフト変更し、かつ交互に均等に二人一組となる年間勤務シフトを作成したいものと考えています。 3、12名のうち6名は先輩で、その外の6名は新人となる初月の15年4月度に限り、先輩6名と新人6名間の二人一組(先輩同士間の組合せは不要)となるシフトを均等に作りたいと考えています。その場合の勤務形態は、上記のとおりですが、新人6名に限り、二勤務二休で対応しても良いとします。    4、エクセルのバージョンは、2003もしくは2013です。関数計算の知識は全くありません。どなたか、無償で、上記の条件を可能な限り満たす勤務シフトの作成を教えていただけませんか。よろしくお願いします。 5、当方のイメージは下図のとおりです。

  • この組み合わせの内容はどうでしょう

    まずはすいません。質問文をお礼に書いてあったからどう対応すれば良いか困りましたよね?「このユーザーに質問する」という機能は自分の質問数が増えるのではないかという不安があったのです(まだ初心者ですから)。だから工夫としてお礼に質問文を補足してから再度自分の質問に答えてもらおうかな、という考えで行ったのですが……やっぱり困りましたよね?なのでそのお礼文に書いた質問を少し変えて記載しようと思います。 難しい内容の回答でした。何かの評論文を読んでいる様に思えました。もう少し簡単な回答をもらえないでしょうか? 「曲がり角で……」って少女漫画とかで物凄くありがちなシーンですね~。言いたいことを察するのは難しいかもしれませんけど~。では貴方の提案するそのシーンと自分が思案してたシーンを組み合わせて…… ヒロインが塀から飛び下りた後(パンは無しという方向で)ダッシュすると自分の視界に入って無かった主人公の肩にぶつかって後で謝ると発言をして教室で再会というのはどうです?転校生という設定を後のストーリー展開を考慮すると変えるのはちょっと無理かも。 P.S pixivというサイトのピクシブ文芸に載せようとしています。

  • 高校 情報Ⅰ(Excel関数)について教えて下さい

    Excel関数を用いて、2つの比較をするというものです。 乱数を使用するようですがやり方がわからないので教えて下さい。 【概要】 ・9つのエリアに分かれた遊園地のどこかにいるAさんを、9人で探す ・探し方は大きく2つ 集中型と分散型 ・Excel関数を使ってそれぞれかかった時間を比較すること ■集中型 9つのエリアのうち、1つのエリアに9名全員を投入して探す ■分散型 9つのエリアをさらに9つに分ける(全部で計81マス) 9人が個々に分散してAさんを探す 【条件】 ・9:00~22:00の13時間で探すこと ・1時間ごとに全員移動する(Aさん含めて) ・集中型と分散型でそれぞれ100回シミュレーションを行い、  かかった時間を比較すること 以上となります。 よろしくお願いします。

  • ユーザーフォーム(ListBox)からのランダム入力

    現在シフト表を作成していて、以下の動作をするマクロを考えています。 素人のため、詳しい方がいればご教授頂けませんでしょうか。。。 ユーザーフォームには ・対象者:10名(複数選択) ・勤務形態:早番、遅番など(単一選択) ・日当たりの必要人数:1~5(単一選択) ・勤務割り当て開始ボタン 上記の3つのListBoxと1つのボタンがあります。 考えている要件は ・選択された対象者に対して、対象者の合計で割られた数だけ勤務形態が割り当てられ、勤務が均等になるようにします。 ・割り当て方は1か月分(31日)で、その中からランダムな日にちに選択された勤務形態が割り当てられます。 ・すでに勤務形態が入力されている項目についても考慮します。  (例えば、月5回必要な場合、3回すでに入力されていれば、残り2回分を割り当てる。) ・日当たりの必要人数については、1~5から選択し、一日当たりの同一勤務の人数を選べるようになっています。 尚、シフト表は縦:勤務者、横:月カレンダーになっています。 そもそも要件が多すぎてできるかも微妙かと思いますが、一部分でもわかる方がいれば、よろしくお願いします。

  • 取締役会のメールの案内のマナーについて教えてください。

    零細企業なので取締役も内部3名外部2名の5名で構成されております。3ヶ月に1度の開催で全てメールで案内をしているのですが、1回で案内を出したいと思っているのですが、外部役員がいますと、取締役各位での通知では失礼にあたりますでしょうか? 個々に出さなくてはいけないものでしょうか? よろしくお願いします。

  • デジタル一眼のシャッターの耐久性について

    デジタル一眼のシャッターの耐久性について 最近の中級以上のデジタル一眼レフではよく「シャッター耐久150,000回クリアー」などと書かれていますが、この基準って何でしょう? 決して「保証」で無いことは分かっています。 私の持っている「100,000回クリアー」のカメラ(あえてメーカー名と製品名は伏せます)が30,000カット行かずにシャッター交換となり、ロットナンバーの違う同型機を使用していた知り合いは35,000カット程度で、やはりシャッター交換となったようです。 私の分だけだと「当たり」が悪かったと諦めもつきますが・・・。 メーカーサポートの返答も的をはぐらかされています。 このシャッター耐久試験クリアーの回数の基準と言うか、発表の根拠についてご存知の方がおられましたらよろしくお願いします。 ただし、特定メーカーのファンで、ライバルメーカーの悪態を突くヨウな回答は不要デス。

  • 採用内定通知の内容について

    転職活動5ヶ月目で、従業員20名ほどの小さな会社なのですが、昨日やっと内定をいただきました。 そして、その日のうちにメールでpdf形式にて採用内定通知書が送られてきました。 内容はたった一枚で ・雇用形態 ・試用期間 ・勤務開始日 ・勤務日時 ・給与 ・交通費 が書かれ、印刷して書名し捺印を押し、郵送すると正式に契約になります。というものでした。 私としては就業規則、もしくはそれに似たようなやたら長い文章のもの(有給や退職金制度、退職の仕方、休暇日数などが詳しく書かれた)も送られてくるものと思っていたのですが、こんなものなのでしょうか? 2回の面接で仕事内容・給料・交通費については話をしましたが、もっと細かい部分についてもきちんと知った上で入社の決意を固めようと思っていただけに、ちょっと拍子抜けです。 後で不一致が生じないようにしたいのですが、就業規則などの細かいk点は入社後でないと読ませてはもらえないのでしょうか? どなたかご教授よろしくお願いいたします。

専門家に質問してみよう