Oops, the perils of an untested formula, looking at it again after seeing your post I see that I made more than 1 mistake with that part.

=IFERROR(INDEX(Sheet3!B:B,AGGREGATE(15,6,ROW(Sheet3!B$3:B$100)/(LOOKUP("ZZZ",$A$2:$A2,$A$1:$A1)=Sheet3!$A$3:$A$100),**ROWS(B$1:B3)-MATCH("ZZZ",$C$1:$C2)**)),"")

All of the ranges are looking at the correct sheets, hopefully that is the only part of the formula where I made an error. I have some suspicions about the part in bold, which I think is going to be incorrect in the second part of the table if there are any blank rows in the first part.

If you're only going to be using it for 2 or 3 dates then I would suggest going with a simpler version and editing it as below.

A3 =IFERROR(INDEX(Sheet3!B:B,AGGREGATE(15,6,ROW(Sheet3!B$3:B$100)/(**$A$1**=Sheet3!$A$3:$A$100),**ROWS(A$3:A3)**)),"")

A14 =IFERROR(INDEX(Sheet3!B:B,AGGREGATE(15,6,ROW(Sheet3!B$3:B$100)/(**$A$12**=Sheet3!$A$3:$A$100),**ROWS(A$14:A14)**)),"")

If you're going to need it for a lot more dates then you can either continue editing based on the 2 examples, or I'll have another look at correcting the first method (if it fails again). I'll wait for your feedback before doing that but it will most likely be tomorrow evening (uk time) before I get chance to have another look.