• ベストアンサー

エクセルでお助けをお願いします

エクセルの機能でSheet1からSheet2への形に出来る方法がありましたらお願いいたします。      A列   B列   C列  1   コード  種類   個数  2    3205  パン   54  3    1205  ジャム   9  4    7741  みかん  16  5    2240  人参   50  6    2240  みかん  10  7    2240  いも   41  8    1133  なす   30  9    3655  米    32  10   3655  砂糖   45 Sheet1      A列   B列   C列   D列   E列   F列   G列   H列   I列  1   コード  種類   個数   コード  種類   個数   コード  種類   個数  2    3205  パン   54    2240  みかん  10    2240  いも   41  3    1205  ジャム   9    3655  砂糖   45  4    7741  みかん  16  5    2240  人参   50  6    1133  なす   30  7    3655  米    32 Sheet2 Sheet1のA列のコードが重複する場合その行のA列、B列、C列の値をSheet2のD列、E列、F列さらにG列、H列、I列へ記入します。 Sheet1 は実際600行から900行くらいあります。

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

  • ベストアンサー
  • saburo0
  • ベストアンサー率35% (76/216)
回答No.3

#2です。 すいません、先ほどの式だと、データが10個まで(質問の内容)しか対応できませんでした。 訂正 (4)の式  =INDEX(Sheet1!$A:$C,MATCH(TEXT(INT((COLUMN()+2)/3),"00000")&TEXT(ROW()-1,"00000"),Sheet1!$E:$E,0),MOD(COLUMN()+2,3)+1) ご対応お願いいたします。

youmack
質問者

お礼

まさに内容にそったお答え本当にありがとうございます。 昨日からの苦悩から開放されました。

その他の回答 (2)

  • saburo0
  • ベストアンサー率35% (76/216)
回答No.2

(1)Sheet1のD2セルへ下記を入力  =TEXT(COUNTIF(A$2:A2,A2),"00000") (2)Sheet1のE2セルへ下記を入力  =D2&TEXT(COUNTIF(D$2:D2,D2),"00000") (3) (1)と(2)の式を下へデータがある行(1000行位?)まで下へコピー (4)Sheet2のA2セルへ下記を入力  =INDEX(Sheet1!$A$1:$C$10,MATCH(TEXT(INT((COLUMN()+2)/3),"00000")&TEXT(ROW()-1,"00000"),Sheet1!$E:$E,0),MOD(COLUMN()+2,3)+1) (5) (4)の式を下及び右へ、データが全て表示される箇所までコピー ではいかがでしょうか。

  • 221west
  • ベストアンサー率36% (168/459)
回答No.1

こんな感じではダメでしょうか? (1)シート1を、A列の順番に並べ替える。 (2)A列とB列の間に、新しい列を設ける(「新B列」とします)。 (3)新B列の内容は、以下の通りにする。 B1は適当な項目名(例えば「枝番」など) B2=1 B3=if(A3=A2,B2+1,1) B4=if(A4=A3,B3+1,1) B5=if(A5=A4,B4+1,1) 以下同様 (4)新B列の中身をコピーして、そのまま値の形式で貼り付ける。 ※並び替えをしても、値が変わらない様にするためです。 (5)新B列の中身の順番に並び替えて、以下の様にシート2に貼り付ける。 新B列の中身が1の物を、シート2のA~C列に貼り付ける。 新B列の中身が2の物を、シート2のD~F列に貼り付ける。 以下同様

youmack
質問者

お礼

早速、適切なご回答感謝いたします。 眼からウロコとはこの事とだと思いました。  本当です。 ありがとうございます。

関連するQ&A