今仮に、上の表がSheet1にあり、下の表はSheet2に表示させるものとします。
又、Sheet3のA列とB列を作業列として使用するものとします。
まず、Sheet3のA1セルに次の数式を入力して下さい。
=IF(COUNTIF(Sheet1!$A$1:$A1,Sheet1!$A1)=1,ROW(),"")
次に、Sheet3のB1セルに次の数式を入力して下さい。
=IF(OR(Sheet1!$A1="",Sheet1!$A1="原産国"),"",Sheet1!$A1&COUNTIF(Sheet1!$A$1:$A1,Sheet1!$A1))
次に、Sheet3のA1~B1の範囲をコピーして、同じ列の2行目以下に貼り付けて下さい。
次に、Sheet2のA2セルに次の数式を入力して下さい。
=IF(ROWS($A$1:$A2)>COUNT(Sheet3!$A:$A),"",INDEX(Sheet1!$A:$A,SMALL(Sheet3!$A:$A,ROWS($A$1:$A2))))
次に、Sheet2のB2セルに次の数式を入力して下さい。
=IF(OR($A2="",COLUMNS($B:B)>COUNTIF(Sheet1!$A:$A,$A2)),"",INDEX(Sheet1!$B:$B,MATCH($A2&COLUMNS($B:B),Sheet3!$B:$B,0)))
次に、Sheet2のA2~B2の範囲をコピーして、同じ列の3行目以下に、記載されている国の数を上回るのに充分な回数だけ貼り付けて下さい。
次に、Sheet2のB列全体をコピーして、C列から右方向にある列に貼り付けて下さい。
以上です。
お礼
シフト+コントロール+エンターキーを押した瞬間、「出来たぁぁぁ!」ってパソコンの前で叫んでしまいました。何が何だか理解はしてませんが、とりあえず式をコピペしたら一発で完了!素晴らしいです。ありがとうございました!