ちょっと厄介な課題ですが、作業列を1個使えば関数で解決できます。
hidesan_31さんには申し訳ないですが、勝手にC列の内容を作業列用に変更させていただきます。
-----------------以下 作業内容----------------
C列は2種類の関数を入力しなければいけません。
C2に「=IF($B$2="","",1)」と入力してください。
C3から下には「=IF(OR(COUNTIF(OFFSET($C$2,0,0,ROW()-2,1),C2)>1,MOD(OFFSET($B$2,C2-1,0,1,1),2)=1),C2+1,C2)」と入力してください。
D・E列はそれぞれ1つの関数だけで大丈夫です。
D2から下には「=IF(OFFSET($A$2,C2-1,0,1,1)="","",OFFSET($A$2,C2-1,0,1,1))」と入力してください。
E2から下には「=IF(D2="","",IF(MOD(OFFSET($A$2,C2-1,1,1,1),2)=1,OFFSET($A$2,C2-1,1,1,1),OFFSET($A$2,C2-1,1,1,1)/2))」と入力してください。
-------------------ここまで-------------------
非常に分かりづらい数式ですが、この数式で途中で値が変化しても動的に対応できるはずです。4行目以降はC3・D3・E3のセルをコピーしてあげてください。
お礼
御礼を言うのが遅くなりすいませんでした。 こちらの関数で思い通りのことができましたありがとうございます。