Think option 3 from my earlier response would apply, viz:
To return values from corresp named range: ReturnCol
where the criteria satisfies:
=index(ReturnCol,match(1,(Date=A1)*(Hour=B3),0))
Above must be array-entered, ie press CTRL+SHIFT+ENTER
Here's an illustrative sample specific to your set-up:
http://www.flypicture.com/download/MTIxMTk=
Extracting based on dual criteria.xls
Note: Do not click on the link direct if you're reading this in microsoft's
webpage. Do a copy n paste of the link (inclusive the "=" at the end) into
your browser.
In the sample:
Source data is assumed in tab: A, cols A to C, from row1 down. Dates in col
A, Times in col B, desired return values in col C. Each date repeats 24
times, with a total assumed of up to 210 days (say), ie till row 5040.
In tab: B,
The 24 hr times are listed in A2:A25, with dates listed in B1 across
Place in B2, array-enter, ie confirm the formula by pressing CTRL+SHIFT+ENTER
=IF(B$1="","",INDEX(A!$C$1:$C$5040,MATCH(1,(A!$A$1:$A$5040=B$1)*(A!$B$1:$B$5040=$A2),0)))
Copy B2 across as far as required & fill down to populate.