The real problem here isn't the absence of VLOOKUP, it's the assumption that a lookup function is the only way to map one value to another. The user has three simple pairings: "NA" becomes "visit 2," "nil" becomes "insufficient blood," and "1" becomes blank. That's not a data challenge; it's a translation table small enough to live inside the formula itself. The solution doesn't require a second sheet, a helper column, or INDEX/MATCH gymnastics. It requires rethinking what a formula can do when the logic is this contained.
A simple nested IF statement handles this cleanly. For each row, you check the value in column J and return the corresponding remark. The formula for K2 would be something like: =IF(J2="NA","visit 2",IF(J2="nil","insufficient blood",IF(J2="1","",""))). Drag it down to K30, and you're done. No external references, no restrictions violated, no extra tables. The user already tried INDEX/MATCH, but that's overkill for three static mappings. When the lookup table is that small and hardcoded, the formula itself becomes the table. That's not a workaround, that's a more direct approach.
What's striking is how often we default to the most familiar tool, even when it creates friction. The organizational restriction on VLOOKUP isn't a technical barrier; it's an invitation to simplify. The user's instinct to reach for INDEX/MATCH shows they understood the constraint but were still thinking in terms of lookup functions. The better mental model is conditional logic. You're not searching for a match across tables; you're defining a rule for each possible input. That distinction matters because it shifts the focus from tooling to thinking. And in a spreadsheet, thinking clearly is the most efficient formula you can write.
So here's the practical takeaway: if you ever find yourself blocked by a restriction on a specific function, don't look for a replacement function, look for a simpler pattern. Nested IFs, or even a SWITCH formula if your version supports it, can handle small, fixed mappings without any lookup at all. The user's request is entirely reasonable, and the solution is genuinely straightforward. The only obstacle was the assumption that mapping values requires a lookup. It doesn't. Write the condition, copy it down, and move on. That's not just a fix for this one file, it's a mindset that will serve you well beyond row 30.