ミネムラ珈琲ブログ

さすらいのコーヒー屋/Spreadsheets小説家/WEBサービスディレクターの日記

GoogleSpreadsheetsでランダムにチーム分けをする

ランダムにチーム分けしたいことありませんか?ぼくは今日たまたまありました。BBQの買い出しチーム分けです。仕事しているとQRコードを作ったりBBQをしたり色々なことがあります。

それでは例として以下の6名を肉、野菜、酒の買い出しチームに分けていきます。

皆さんご存知ニンジャスレイヤー、ソウカイヤシックスゲイツの皆さんですね。

ニンジャスレイヤー第1部 ネオサイタマ炎上1

ニンジャスレイヤー第1部 ネオサイタマ炎上1

もっとも単純な方法はただ=RAND()で乱数をふって並び替えてしまうことでしょう。

f:id:minemuracoffee:20190726211110p:plain

ビホルダーサンとヒュージシュリケンサンが肉の買い出しをしてくれることになりました。頼もしいですね。

注意点として、RAND関数はシート内になにかしらの変更が生じるとリフレッシュされて値が変わってしまうこと。一度値を入れたら即値貼りしましょう。ちなみにこのとき値を見ながらリフレッシュし始めるともはやランダムとは言えなくなるので注意してください。

これでも十分用途は満たすのですが、同僚や友人にSpreadsheetテクニックを見せつけたい人は先に進みましょう。

f:id:minemuracoffee:20190726213154p:plain

ランダムなチーム分け - Google スプレッドシート

=ROUNDUP(RANK(B2,B$2:B$7)/COUNTA(A$2:A$7)*COUNTA(F:F))

このような感じでRANKとCOUNTAだけでチーム番号を割り振ります。関数が多いので行を分割したほうがいいのですが、力を見せつけるためには複雑なものを見せつけたほうがいいときもあります。

最後にさすがに切り出したVLOOKUPでチームを表示。以上です。

チームが変わりましたが、これはRAND関数のデフォルト昇順降順とさきほどの順序が逆になったからです。

快適なBBQライフを。

www.minemura-coffee.com

Spreadsheetコミュニティやってるよ!!