• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:データの並び替え方法について)

データの並び替え方法について

このQ&Aのポイント
  • リストAの形式からリストBに自動で変換する方法を教えてください。EXCELでもACCESSでも簡単なやり方があればうれしいです。
  • データの並び替えについて、リストAの形式からリストBに変換する方法を教えてください。EXCELやACCESSで簡単に実行できる方法を教えてください。
  • データの並び替えについて知りたいです。リストAのデータをリストBの形式に変換する方法を教えてください。EXCELやACCESSを使った簡単な手順があれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.3

ユニオンクエリで。 SELECT 顧客番号, 1 AS データ区分, データ1 AS 数量 FROM リストA UNION SELECT 顧客番号, 2, データ2 FROM リストA UNION SELECT 顧客番号, 3, データ3 FROM リストA UNION SELECT 顧客番号, 4, データ4 FROM リストA Order By 顧客番号, データ区分

p-p
質問者

お礼

すいません お礼の入力しておりませんでした 大変遅くなりましたがありがとうございました

その他の回答 (3)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

エクセルのマクロ例です。 (1)リストAをSheet1、リストBをSheet2としています。 (2)Sheet2タブで右クリック→コードの表示→以下のコードを貼り付け→VBE画面終了 (3)ツール→マクロ実行 Sub シート1をシート2に並替え() Set ws1 = Sheets("sheet1") Set ws2 = Sheets("sheet2") j = 2 For i = 2 To ws1.Cells(Rows.Count, 1).End(xlUp).Row x = 1 For k = 3 To ws1.Cells(i, Columns.Count).End(xlToLeft).Column ws2.Cells(j, 1).Value = ws1.Cells(i, 1) ws2.Cells(j, 2).Value = x ws2.Cells(j, 3).Value = ws1.Cells(i, k) j = j + 1: x = x + 1 Next Next End Sub

p-p
質問者

お礼

回答ありがとうございます 僕はVBの知識がなく、ちょっと難しいです わざわざ回答くださりありがとうございます

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 今仮に、【リストA】が存在している範囲がSheet1のA列~F列で、Sheet1のA1セルに「顧客番号」、B1セルに「氏名」、C1セルに「データ1」、D1セルに「データ2」、E1セルに「データ3」、F1セルに「データ4」と入力されていて、 【リストB】が存在している範囲がSheet2のA列~C列で、Sheet2のA1セルに「顧客番号」、B1セルに「データ区分」、C1セルに「数量」と入力されているものとします。  まず、Sheet2のA2セルに次の数式を入力して下さい。 =IF(ROW()>(COUNTIF(Sheet1!$A:$A,"><")-1)*4+1,"",INDEX(Sheet1!$A:$A,FLOOR(ROW()-2,4)))  次に、Sheet2のB2セルに次の数式を入力して下さい。 =IF($A2="","",MOD(ROW()-2,4)+1)  次に、Sheet2のC2セルに次の数式を入力して下さい。 =IF($A2="","",INDEX(Sheet1!$C:$F,FLOOR(ROW()-2,4),MOD(ROW()-2,4)+1))  次に、Sheet2のA2~C2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。  以上です。

p-p
質問者

お礼

すいません お礼の入力しておりませんでした 大変遅くなりましたがありがとうございました

回答No.1

たたき台! 前提条件 4行ごと A8セル =IF(COUNTA($A$2:$A$5)*4<ROW(A1),"",INDEX($A$2:$A$4,ROW(A4)/4)) B8セル =IF(A8="","",MOD(ROW(A4),4)+1) C8セル =IF($A8="","",INDEX($C$2:$F$4,ROW(B4)/4,MOD(ROW(B4),4)+1)) A8:C8下へオートフィル

参考URL:
http://okwave.jp/qa/q6370679.html
p-p
質問者

お礼

すいません お礼の入力しておりませんでした 大変遅くなりましたがありがとうございました

関連するQ&A