How many different rate tables do you have, and how would you know which 1 to use? Looking at the calc sheet, I cannot see where it tells me to use "Vancouver? or "Edmonton?

Maybe create a range name for each table. It looks like the city names are the same in both (+other???) tables, so you could probably use only 1 set of names, and then change the forumla to something like this...
=INDEX(Vancouver,MATCH(E28,Rates!A1:A39,0),MATCH(A28,Rates!B1:G1,1))

If you put the table name in its own cell (and maybe use data valudation), you could change to something like this. (A25 contains my DV list)...
=INDEX(INDIRECT(A25),MATCH(E28,Rates!A2:A39,0),MATCH(A28,Rates!B1:G1,1))