プロが教えるわが家の防犯対策術!

Excel2010を使用しています。

番号/氏名/項目1/項目2/項目3
 1  A 1,000 1,000  1,000

…という表を

1/A/項目1/1,000
1/A/項目2/1,000
1/A/項目3/1,000

というように、タイトル行をそれぞれ列のサブタイトルのように
自動的または更新を行って変換する方法を模索しています。
(画像をご覧いただけると分かり易いと思います。)

関数、VBA、ピボットテーブル等なんでも結構です。
Access等他のオフィスソフトを使用すべきであればその旨ご教示いただけると
幸いです。
宜しくお願いいたします。

「【Excel】タイトル行をそれぞれ列に変」の質問画像

A 回答 (5件)

No.4です。

No4の回答は一部間違いがあったので無視してください m(_ _)m
添付図なら

A8セルに =INDEX(A$2:A$6,(ROW(A1)-1)/6+1)
B8セルへオートフィル

C8セルに
=INDEX($C$1:$H$1,MOD(ROW(A1)-1,6)+1)
D8セルに
=INDEX($C$2:$H$6,(ROW(B1)-1)/6+1,MOD(ROW(A1)-1,6)+1)

A8:D8セルを下へオートフィル

COUNTA関数を使って、割る数の 6 を可変にすることも考えられます。
その場合、INDEXの範囲は考えられる最大範囲にしておくこと

D8セル
=INDEX($C$2:$M$7,(ROW(B1)-1)/COUNTA($C$1:$M$1)+1,MOD(ROW(A1)-1,COUNTA($C$1:$M$1))+1)
といった感じで参考まで
    • good
    • 2
この回答へのお礼

紛らわしいタイトル及び拙い説明を読み解いてくださり、即使用できるご回答をいただきまことにありがとうございました。
INDEX関数をはじめとした行列関数についてもう少ししっかり勉強したいと思います。
ありがとうございました!

お礼日時:2016/01/08 17:19

添付図なら


A8セルに =INDEX(A$2:A$6,(ROW(A1)-1)/5+1)
B8セルへオートフィル

C8セルに
=INDEX($C$1:$H$1,MOD(ROW(A1)-1,6)+1)
D8セルに
=INDEX($C$2:$H$6,(ROW(B1)-1)/5+1,MOD(ROW(A1)-1,6)+1)

A8:D8セルを下へオートフィル
COUNTA関数を使って、割る数の 5 や 6 を可変にすることも考えられます。
その場合、INDEXの範囲は考えられる最大範囲にしておくこと
    • good
    • 0

こんにちは!



VBA向きの質問だと思います。
元データがSheet1にあり、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("Sheet1")
With Worksheets("Sheet2")
.Cells.Clear
For i = 2 To wS.Cells(Rows.Count, "A").End(xlUp).Row
For j = 3 To wS.Cells(i, Columns.Count).End(xlToLeft).Column
cnt = cnt + 1
With .Cells(cnt, "A")
.Value = wS.Cells(i, "A")
.Offset(, 1) = wS.Cells(i, "B")
.Offset(, 2) = wS.Cells(1, j)
.Offset(, 3) = wS.Cells(i, j)
End With
Next j
Next i
End With
End Sub 'この行まで//

※ 関数でないのでデータ変更があるたびにマクロを実行する必要があります。

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 2
この回答へのお礼

ご丁寧に構文を提示していただきありがとうございました!
関数とマクロと組み合わせて活用させていただきたいと思います。
ありがとうございました!

お礼日時:2016/01/22 15:24

http://shikaku.biglobe.ne.jp/pc_technic/excel/03 …
一気に出来るか、一行ずつするかは、自分で判断してください。

ちなみに、ここで質問しなくても、タイトルの内容で検索するとわかるかな。
    • good
    • 0

行列入れ替えではダメですか?その後ソートで並べ変えれば出来そうですが・・・


http://shikaku.biglobe.ne.jp/pc_technic/excel/03 …
    • good
    • 0

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