代案:数式だけ
前提
<前>の表を若干変更します。
列A:連番(1から重複しないように+1する)
列B:品名
列C:数量
変換後表のレイアウト
列Eの数式:E2:=IF(SUM(G1)>0,SUM(E1),SUM(E1)+1)
列Fの数式:F2:=VLOOKUP(E2,A:B,2,FALSE)
列Gの数式:G2:=IF(SUM(G1)>0,SUM(G1)-1,VLOOKUP(E2,A:C,3,FALSE)-1)
E2〜G2を下へフィルドラッグします。
前表にデータを追加した時は、E〜Gの数式を下へコピペします。
予め数式をたくさん用紙て置く場合は、
VLOOKUPのエラーをスペースに変更する「IFERROR」を付加すればよいです。