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

EXCELで特定セルの行と列を入れ替える方法はありますか?

【入替え処理のイメージ】

①元データ

A│4│9│2│
─┼─┼─┼─┼─
B│5│1│3│7


②入れ替え後のデータ

列1│列2
──┼──
A │4
──┼──
A │9
──┼──
A │2
──┼──
B │5
──┼──
B │1
──┼──
B │3
──┼──
B │7


①のような並びになっているデータを、②のように入替えをしたく、関数を使う方法、関数を使わない方法など探しましたが、いまいち上手く処理が出来ない状況です。。

何か良い方法がありましたら、是非教えて下さい。
どうぞ宜しくお願い致します。

A 回答 (3件)

こんばんは!



VBAになりますが、一例です。
元データはSheet1の1行目からあり、Sheet2に表示させるとします。

Alt+F11キー → メニュー → 挿入 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)マクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)

Sub Sample1() 'この行から//
Dim i As Long, j As Long, cnt As Long, wS As Worksheet
Set wS = Worksheets("Sheet2")
wS.Range("A:B").Clear
With Worksheets("Sheet1")
For i = 1 To .Cells(Rows.Count, "A").End(xlUp).Row
For j = 2 To .Cells(i, Columns.Count).End(xlToLeft).Column
cnt = cnt + 1
wS.Cells(cnt, "A") = .Cells(i, "A")
wS.Cells(cnt, "B") = .Cells(i, j)
Next j
Next i
End With
End Sub 'この行まで//

※ 関数でないのでデータ変更があるたびに
マクロを実行する必要があります。m(_ _)m
    • good
    • 1
この回答へのお礼

助かりました

迅速なご回答、マクロ実行までの手順説明等々、ご丁寧にありがとうございました!
こちらのマクロを早速ためさせて頂き、無事処理ができました!

本当に助かりました!ありがとうございます!!

お礼日時:2016/10/26 09:31

ちょっと勘違い


似たようなもんだけど
2行目から元のデータがあるとして
F1セルに 0
F2セルに
=COUNT(B$2:E2)
下へオートフィル

H2セルに
=LOOKUP(ROW(H1)-1,F:F,$A$2:$A$6)
I2セルに
=INDEX($B$2:$E$6,MATCH(ROW(I1)-1,F:F),ROW(I1)-LOOKUP(ROW(I1)-1,F:F))
H2:I2セル 下へオートフィル
「EXCELで特定の行と列を入れ替える方法」の回答画像3
    • good
    • 1
この回答へのお礼

助かりました

ご回答、また、訂正箇所についての迅速なご回答、ありがとうございました!
こちらの方法でも、無事処理することができました!!

非常に助かりました!ありがとうございました!!

お礼日時:2016/10/26 09:31

2行目から元のデータがあるとして


E1セルに 0
E2セルに
=COUNT(A$2:D2)
下へオートフィル

F2セルに
=INDEX($A$2:$D$6,MATCH(ROW(F1)-1,E:E),ROW(F1)-LOOKUP(ROW(F1)-1,E:E))
下へオートフィル

添付図参照 参考まで
「EXCELで特定の行と列を入れ替える方法」の回答画像2
    • good
    • 1

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