Forum Discussion
LOOKUPVALUE results are not consistent for the same input
I'm seeing inconsistent results with Lookupvalue and need another couple sets of eyes.
Table 1 (source) - This table starts as a Reference table in Power Query and is then Grouped in M on the primary column "CR Number", so when it is loaded, the values in the "CR Number" column are unique by default and is not a caculated column. The "CR" column is a whole number. I then have 3-4 calculated columns in this table that I'd like to pull into another table.
Table 2 (destination) - This is the DAX UNION of two other tables, and the "Absolute CR" column is also a whole number and is one of the SELECTCOLUMNS pulled in with the union. These two tables are related on the "CR" columns in a one to many relationship.
I'm on version April 2021. Any ideas?
angieleman I have also struggled with LOOKUPVALUE. I tend to use MAXX(FILTER(...)...) syntax instead. Works regardless if one or more values are pulled back and seems to work more consistently than LOOKUPVALUE when there should be only 1 row anyway. I'm not certain because I haven't really dug into it but I wonder if LOOKUPVALUE has an issue when a blank row appears and since this counts as having more than 1 row in the results, it ends up returning the default blank when more than one row result from the filters provided. It's just a guess but, as I said, MAXX(FILTER takes care of it.
2 Replies
- angieleman
Advocate I
Greg_Deckler EEEEKKKKK I WORKED!!!!!!! YOU'RE MY ABSOLUTE HERO!
- Greg_Deckler
Community Champion
angieleman I have also struggled with LOOKUPVALUE. I tend to use MAXX(FILTER(...)...) syntax instead. Works regardless if one or more values are pulled back and seems to work more consistently than LOOKUPVALUE when there should be only 1 row anyway. I'm not certain because I haven't really dug into it but I wonder if LOOKUPVALUE has an issue when a blank row appears and since this counts as having more than 1 row in the results, it ends up returning the default blank when more than one row result from the filters provided. It's just a guess but, as I said, MAXX(FILTER takes care of it.