>>36
俺が困るので先に言っとく
『行』とは横のことを指す(左の数字)
縦を指すときは『列』と呼ぶ(上の英字)

そこをふまえて
>B列が1行上の値と違う場合、1行上に行を挿入して、その行に「果物」と入れたい
と言う条件と
>「みかん」と「バナナ」のそれぞれ1行上に行が入ってしまいます。
と言う結果は整合性のある状態なので問題はないと思う

もしも望む結果ではないのであればまず

 >B列が1行上の値と違う場合、

を見直すことが必要
やりたい内容を鑑みれば

 B列に入力があり、1行上の値が空白である場合、

と変えればいいと思う