システムwiki

プログラムの組み合わせの生徒数を数えます

THnat 解決済 最終更新日:2021-05-02 02:40

HI、

私は学生と彼らが登録されているプログラムを示すデータのリストを持っています.同じプログラムに何人の生徒が登録されているかを知りたいです. コンビネーション.

例えば、xzy8の何人の生徒がいますか. abc1.xyz8にはいくつありますか def2.abc4にはいくつありますか
mnO9.ETC.

ピボットtableを使いようとしていましたが、組み合わせ番号を入手できませんでした...私は2つのプログラムでフィルタリングすることができましたが、結果はのどちらかのプログラムに登録されていて、人ではなくその具体的なものに登録されている人 プログラムのの組み合わせ

これは可能な限り?

タミー

返信リスト(回答:11)

6 #
Herbert

Excel 2010/2013/2016 Power Query(別名Get&Transform)

m個のプログラムからn個を選び、生徒を数えます.

数式もVBAマクロもありません.

PQソースなしでは消化できません.

https://www.mediafire.com/file/jjzrm6qo3o3tm36/04_20_17.xlsx

https://www.mediafire.com/file/pt65ivy10mubmif/04_20_17.pdf

応答6# ->にスキップ
7 #
THnat

ありがとう、ハーバート!私はPowerQueryを初めて使用するので、これを確認します.

お時間を割いて私の投稿に返信していただきありがとうございます.
タミー

応答6# ->にスキップ
8 #
THnat

こんにちはハーバート、

私は新しいクエリを作成しましたが、実際には「Mプログラムのうちにnを選択して学生を数える」の隣に何をすべきかわからない.

例のファイルのありがとうございました!それはかなりクールですが、あなたの検索からの各コンボを選択することなく、Excelがすべての組み合わせの数を返す方法はあります.
Sheet1?

を示します

タミー

9 #
Ronaldo

下の画像を参照してください.ヘルパー列を使用しました.これは、数学コースとフランス語コース(セルE1とF1のオプション)の両方に参加している学生の数を検索しています.ヘルパーセルC2に以下の数式を入力し、下にドラッグします.これは行9にのみ移動しますが、調整します
実際の行数の式.黄色のボックスが答えであり、

= COUNTIF(C2:C9,2)/2

(完了したらヘルパー列を非表示にできます)

応答9# ->にスキップ
11 #
THnat

クラスが列に表示されていない場合、式はどのように変更されますか?

データは、1行あたりのクラス(およびそのクラスに関する情報)ごとに学生レコード(および情報)を示すレポートです.例えば:

私はあなたの時間に感謝し、またありがとうございました!

タミー

応答11# ->にスキップ
2 #
Ronaldo

セル内の変数を使用してクラスを定義したくない場合は、次のように数式に変数をハードコーディングできます

= IF(OR(B2="Maths"、B2="French")、SUMPRODUCT(($ A $ 2:$ A $ 9=A2)*($ B $ 2:$ B $ 9={"Maths"、 "フランス語 "}))、0)

応答2# ->にスキップ
1 #
THnat
再度、感謝します!申し訳ありませんが、E列とF列に焦点を当てましたが、1つの列にクラスがリストされていることを見逃しました.これを試してみます!
応答2# ->にスキップ
3 #
THnat

こんにちは-29番組があります.私が可能なそれぞれの組み合わせについて考慮する必要がないように、式を微調整する方法はありますか?

例えば、学生はプログラム「XYZ」と他の28の選択肢の1つに登録することができます.

これについて考えることができるほど、私はそれが行うことができるわけではありません...カウントを表示しますか.多分各組み合わせの別の式は、行く唯一の方法ですか?

あなたの式を作成し、結果を得た、そして「待って、私はそれぞれの組み合わせに対してこれをしなければならない」と思った.:)

あなたの忍耐力に感謝します.

タミー

応答3# ->にスキップ
5 #
JavedA

4つのコースがあるとしましょう.Power of2でコードを入力します.

数学1、物理2、化学4、論理8と言う

次に、学生名を使用してピボットtableを作成し、コースコードを[値]領域に配置します.これにより、各学生とそのコースコードの合計が表示されます.2の累乗を使用したため、組み合わせごとに異なる一意の合計が生成されます.

以下では、aとbは同じ組み合わせです.

名前 コースコード
a 1
b 2
b 1
a 2
c 4

ピボット.

名前 コースコードの合計
A 3
b 3
c 4

値を上に貼り付けて、行に「コースコードの合計」、値に名前を付けて別のピボットを作成します

もちろんコードの合計 名前の数
3 2
4 1
10 1

一度は、Sum ofCourseコードとテキスト表現を使用してtableを作成する必要があります.後でVLOOKUPを与えるだけです.

上記の場合、tableは次のようになります.

1 数学
2 物理学
3 数学、物理学
4 化学
5 化学、数学
6 化学、物理学
7 化学、物理学、数学
8 ロジック

追加の合計 名前の数
3 2
4 1
10 1

応答5# ->にスキップ
4 #
THnat

ありがとう、asadulla-私はこの提案について少し失われていることをお詫び申し上げます.私はこの象の1つの噛み合いを食べようとしています:)...

1.プログラムのリストを含むtableを作成し、各値に番号を割り当てるべきです.(1,2,4,6,8,10,12,14など)

それを始める権利はありますか?

数字が1桁目または2℃の場合は問題になりますか?

2.その後、割り当てられた番号の新しい列を学生データに挿入し、新しいtableの中のプログラムに与えられた番号を、生徒が服用しているプログラムにマッチしますか?

私がこれを正しく読んでいるかどうかを確認するためにそこにやめて...そして続けてください...:)

ありがとうございました!

10 #
AmitTan

下の画像を参照してください:

セルD4に配列数式として以下の数式を入力します(CTRL + SHIFT + ENTER):

= SUM(IF(FREQUENCY(IF(ISNUMBER(MATCH(B2:B150、E1:E2,0))、IF(A2:A150<>""、MATCH(A2:A150、A2:A150,0) ))、ROW(A2:A150)-ROW(A2)+1)>1,1))

これにより、列Bのクラス「BUB」と「VAT」(E1:E2)の両方に登録されている名前(列A)の数が返されます.E1:E2のクラスを変更すると、それに応じて数式が返されます.

これが示されている以下のリンクからExcelファイルをダウンロードすることもできます:

https://globaliconnect.com/Excel/Microsoft/DownloadFiles/Frequency_CountNamesWith2combinations_Array.xlsx