アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelでこのように(↓)管理されている表を

    算数 理科 国語 社会
Aさん 合格 追試 合格 追試
Bさん 合格 合格 追試 合格


このように縦にしたいのです。

Aさん算数 合格
Aさん理科 追試
Aさん国語 合格
Aさん社会 追試
Bさん算数 合格
Bさん理科 合格
Bさん国語 追試
Bさん社会 合格

どうすれば良いのでしょうか・・・
いくら検索してもわかりません。助けてください(>_<)

A 回答 (3件)

関数を組み合わせる方法があるでしょうが、手っ取り早いのは「transpose関数」で、行列を入れ替えるやり方がいいかも知れません。



この間数は「配列関数」ですので、数式をセルに設定するときにコツがいります。ネットで調べてみてください。
    • good
    • 0

こんばんは。



例えば、Sheet2 に移すのでしたら、以下のようにすればよいですね。
式自体は、1行目は、いつでも以下のようになります。

A1:
=OFFSET(Sheet1!$A$1,((ROW(A1)-1)/4)+1,)

B1:
=OFFSET(Sheet1!$A$1,,MOD(ROW(A1)-1,4)+1)

C:
=OFFSET(Sheet1!$A$1,((ROW(A1)-1)/4)+1,MOD(ROW(A1)-1,4)+1)

後は、表示が、0 になるまで、その3つのセルをまとめて、フィルダウンコピーをしてください。

なお、必ず一度、ちゃんと転記されているか、チェックしてみてください。
    • good
    • 0
この回答へのお礼

できました!長時間悩んでいたことがWendy02さんのおかげで一気に解決しました!本当にありがとうございました!!

お礼日時:2006/01/15 09:39

例データ


A1:E4
算数理科国語社会
Aさん合格追試合格追試
Bさん合格合格追試合格
Cさん追試追試合格合格
とする。
第10行目から目的の表を作るとする。
(A列)氏名
A10に =INDEX($A$1:$E$4,INT((ROW()-10)/4)+2,1) と入れて
A21(21=10-1+4*3)まで式複写する。
各人4科目なので、4回繰り返して出る。実際の場合は、上記式の10,4を開始行と科目数により変更が必要。
(B列科目名)
B10に =INDEX($A$1:$E$4,1,MOD(ROW()-10,4)+2) と入れて、B21まで式を複写する。4科目の4行の繰り返しを作ればよい。
(C列同格等)
C10に =INDEX($A$1:$E$4,INT((ROW()-10)/4)+2,MOD(ROW()-10,4)+2)と入れて、C21まで式複写。
(注)
(A)もちろんA10,B10,C10に上記の式をいれ、A10*C10の式を+ハンドルでA21:C21まで複写するのが良いが、説明の都合で、各列の複写する方式で説明。
(B)質問の例から離れて、実際の例に適用する場合は、上記式の10,4の数字を開始行と科目数により変更が必要。
結果
Aさん算数合格
Aさん理科追試
Aさん国語合格
Aさん社会追試
Bさん算数合格
Bさん理科合格
Bさん国語追試
Bさん社会合格
Cさん算数追試
Cさん理科追試
Cさん国語合格
Cさん社会合格
    • good
    • 0

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