No.5ベストアンサー
- 回答日時:
1.範囲 F2:F60 に59人の名前を入力
2.セル E2 に式 =RAND() を入力して、此れを下方にズズーッとドラッグ&ペースト
3.セル C2 に式 =VLOOKUP(SMALL(E$2:E$60,ROW(A1)),E$2:F$60,2,FALSE) を入力して、
此れを下方に(セル C60 まで)ズズーッとドラッグ&ペースト
4.グループ分けは次のようにすればよろしいかと
7人グループ1 → C2:C8
7人グループ2 → C9:C15
7人グループ… → ………
7人グループ5 → C30:C36
6人グループ1 → C37:C42
6人グループ2 → C43:C48
6人グループ3 → C49:C54
6人グループ4 → C55:C60
ご回答ありがとうございます。
すごいっすね。できました。ありがとうございます。
どうしたら、そんなにエクセルをマスターできるんですか!?
No.6
- 回答日時:
ANo3 merlionXXです。
> バージョンは、2010です。
> VBAの画面が出てこないので、ネットでVBA画面の出し方を調べて出しました。
> それに貼り付けることはできたんですが、それ以降をどのように行えば良いのか分からなくなってしまいました。
Windows7/Excel2010を持っている方のところで試してきました。
2007までと同様に
ワークシート画面から、Altキー+F11キーでVBE画面にいけました。
VBE画面から、Altキー+F11キーで、またワークシートに戻れました。
ワークシート画面でAltキー+F8キーで、マクロ実行のダイアログも出ました。
標準モジュールにちゃんとコピペされているかどうかもう一度確認してから、再度お試しください。
No.4
- 回答日時:
既回答もそれと思うが、1-59の乱数を59人の作業列にふり、その乱数順にソートする。
もちろん同番号は現れるが、ソートすることにより、同じ乱数値でも上からの順位(場所というか)は決めてくれる。これで上から7人ずつ5組と、残り6人を4組作れば良い。
エクセルの関数RAND、RANDBETWEENを使う。
http://d.hatena.ne.jp/sutara_lumpur/20080826/121 …
http://aoki2.si.gunma-u.ac.jp/Hanasi/excel/のような記事もあります。
しかし質問程度の場合は気にしなくても良いかと。
乱数が出た直後に、乱数の式を消して、自身のセルに値化するほうが良いと思います。(形式を選択して貼り付けー値)
エクセル関数のSeed値
VBAの場合はシード値を指定できます。
http://officetanaka.net/excel/vba/function/Rnd.htm
ーー
一発で出すなら
No.3
- 回答日時:
エクセルのバージョンは何ですか?
すくなくとも2007までは試したことがあり、この方法で大丈夫だと思うのですが・・・。
> VBAにコピペするところまでは、できたんですが、その後、Alt+F11、Alt+F8ができません。
> そもそも、Alt+F11でVBAがでてきませんでした。
Alt+F11でVBE画面がでなかったら、どうやってどこに貼り付けましたか?
たびたびのご回答ありがとうございます。
バージョンは、2010です。
VBAの画面が出てこないので、ネットでVBA画面の出し方を調べて出しました。
それに貼り付けることはできたんですが、それ以降をどのように行えば良いのか分からなくなってしまいました。
何度もすみません。
No.2
- 回答日時:
Rand関数での方法はすでに出ていますが、関数方式だと再計算のつどグループが再設定されてしまいます。
その点、マクロならユーザーが指示しない限りそのままの状態を維持します。
以下の前提でマクロを作成しました。
・対象となる59名のデータはSheet1のA1セルからA59セルにある。
・グループを書き込む先はSheet2のA列からI列に7名5グループ、6名4グループ、Sheet
手順は以下のとおりです。とても簡単ですよ。
1.データのあるエクセルの画面上で、AltキーとF11キー同時に押し(以下Alt+F11キーと記述)て Visual Basic Editor を呼び出します。
2.Visual Basic Editor のメニューから「挿入」、「標準モジュール」で出てきたコードウィンド(右側の白い広い部分)に以下のコード(Sub~End Sub)をコピペします。
'********これより下**********
Sub test01()
Dim ws(1 To 2) As Worksheet
Set ws(1) = Sheets("Sheet1")
Set ws(2) = Sheets("Sheet2")
Randomize
With ws(2)
Application.ScreenUpdating = False
ws(2).Cells.ClearContents
ws(1).Range("A1:A59").Copy .Range("A1:A59")
For i = 1 To 59
.Cells(i, "B") = Rnd
Next i
.Range("A1:B59").Sort Key1:=.Range("B1"), Order1:=xlAscending, Header:=xlNo, Orientation:=xlTopToBottom
.Range("B1:B59").ClearContents
For i = 1 To 10
x = IIf(i > 5, 1, 0)
.Range(.Cells(8 - x, i), .Cells(8 - x, i).End(xlDown)).Cut Destination:=.Cells(1, i + 1)
Next i
Application.ScreenUpdating = True
End With
End Sub
'********これより上**********
3.Alt+F11キーでワークシートへもどります。
4.Alt+F8キーで出てきたマクロ名(test01)を選択して実行します。
上記4.を何度でも実行できます。
その都度Sheet2のグループ構成員はランダムに変わります。
お試しください。
ご回答ありがとうございます。
VBAにコピペするところまでは、できたんですが、その後、Alt+F11、Alt+F8ができません。
そもそも、Alt+F11でVBAがでてきませんでした。
どうしたら、よいでしょう。
No.1
- 回答日時:
図のようにA列にランダムで大きい数字を表示し、
B列にA列の数字の順位をつけ、それを59行目までコピーして、
順位に対応する出席番号にすれば大丈夫だと思います。
しかしこの方法だとグループ分けができないので、
上から何人がAグループ、みたいな分け方をしなければなりません。
あと、ランダムの数字の表示は何か作業をするごとに変化してしまうので、
気をつけてください。
※ ランダムの表示なので小さい確率で同じ数字が表示される場合がありますが、
どこかに一文字入力するなど何か作業をすれば数字は変化します。
A1内容 =RAND()*100000000
B1内容 =RANK(A1,$A$1:$A$59)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル会員名簿について。 Yahooメールの連絡先で、AさんCさんにチェックをつけて別のグループに 2 2023/03/27 20:33
- Excel(エクセル) 指定した数字まで累計する方法や文字例の抽出について教えてください 4 2022/10/05 21:19
- いじめ・人間関係 私は中学二年生の頃にクラスで孤立していました。 今は春から大学生になったんですけど、当時苦手だった子 2 2023/05/06 21:08
- いじめ・人間関係 私はどうしたら良いでしょうか? 専門学校に通う一年生です。 私は普段私を含め6人グループ(私、A、B 2 2023/07/14 16:27
- サーバー Windowsサーバでグループを検索したい 1 2023/04/17 15:30
- 英語 【英語】海外向けの文書 宛先について 3 2022/10/06 09:57
- その他(芸能人・有名人) メンバーが欠けると補充するグループと、欠けたままで続行するグループ。違いは? 8 2023/01/22 09:10
- 高校 順列、組み合わせの宿題を教えていただきたいです。 ABCDEの5人を2人グループに分けます ①Aが3 4 2023/02/24 14:16
- Google 翻訳 ランダムチャットというアプリはランダム通話のときはスマホがAndroidならばれますか?関係ないけど 1 2023/04/03 17:15
- 学校 最後のクラス替えで友達いなくて泣いてます、辛いです 2年の時仲良くしていた(自分入れて)4人で、その 1 2022/04/12 19:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの空のセル
-
エクセルのハイパーリンクがう...
-
エクセルの数式で教えてください。
-
Excel 漢字二文字の先頭と最後 ...
-
EXCELだけを格安で買える店を教...
-
他人が作ったマクロの理解
-
エクセルで比較 かつ 部分一致...
-
一列の中の金額を他のセルに
-
Excelが大きくなってしまう問題
-
エクセルで入力してある文を別...
-
ExcelVBAの漢字の範囲について...
-
余分なEXCELファイルに印刷され...
-
【スプレッドシート】時間入力...
-
【VBA】シート名と見出しが一致...
-
長期休みの関数はありますか
-
表示されている人数だけを数え...
-
Excel関数について
-
Excel関数の先頭に「@」が入っ...
-
Excelの関数について質問です。
-
エクセルの書式設定について教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル詳しい方教えて下さい
-
ExcelでA列をコピーしたいので...
-
エクセルのセル統合について
-
Excelの関数で起きた現象の原因...
-
Excelファイルが閉じられい!
-
Excelのシート背景に不明な文字...
-
エクセルの枠線
-
Excel 領収書発行
-
エクセル関数の使い方を教えて...
-
C列にF列の担当者(A〜)を順番...
-
ピポットテーブルの参照元を別...
-
EXCEl VBA
-
Excelでの判別方法
-
VBAで、サブフォルダにある複数...
-
"りんご"と"みかん"というシー...
-
マクロについて教えてください。
-
EXCELファイルが読み取り専用で...
-
同一セルに入力規則のリストと...
-
100行50列の表で、1~40列でフ...
-
なぜか「Nextに対応するForがあ...
おすすめ情報