@OP:
Let's take a look at your where clause:
"LeagueID= "&[LeagueID] And "" & [Rank] & " Between LowerRSum And UpperRSum"
yuck
"(LeagueID= " & [LeagueID] & ") And (" & [Rank] & " Between " & LowerRSum & " And " & UpperRSum & ")"
if LowerRSum/UpperRsum are fields then enclose in square brackets; however, you note that the "BETWEEN" works so you may very well leave it alone other that the grouping.
THE SPACEING IS VERY IMPORTAINT too... the string is passed to the JET/ACE engine as a SQL "WHERE" clause; thus, if it wouldn't work in a query, it will NOT work in the DLOOKUP() either... you can [F1] for more information or do a net search for the command's details.
if [LeagueID] is text then add a single quote:
( = '" & [LeagueID] & "' AND " )
same with [Rank].
Also note the grouping with the "()" around the first and second conditions, this helps the DBEngine tell what is where and when.
@dgunner71:
In any event, I assume that LeagueID is a string
we try hard not to assume anything about the poster's intent. You will find very quickly that it is usually much better to ask a clarifying question than to attempt an answer that is potentially mis-leading.
In fact, if you find the question doesn't have enough information to attempt an outright answer you'll find that one of the Mods or Experts will be along shortly to ask for further details... or if lacking too much, the Mods (like myself) will simply pull the thread with some B-T-S comments to OP to help write a better a question.