関数だとこんなのも。
●Sheet1
A B
1 りんご 1
2 バナナ 2
3 みかん 3
●Sheet2
A B
1 りんご 1
2 バナナ 2
3 バナナ 2
4 みかん 3
5 みかん 3
6 みかん 3
A1
=LET(a,Sheet1!A1:B100,b,TAKE(a,,-1),c,SCAN(0,b,LAMBDA(s,t,SUM(s,t))),
d,BYROW(SEQUENCE(SUM(b)),LAMBDA(r,XMATCH(r,c,1))),
INDEX(a,d,SEQUENCE(,COLUMNS(a))))