Why spreadsheets ask for criteria in two different ways

Have you ever wondered why some spreadsheet functions, like SUMIFS, require you to specify "criteria range" and "criteria" separately, while others, like FILTER, combine them into one expression?

3 min readMicrosoft Excel | Help & Support with your Formula, Macro, and VBA problems | A Reddit Community

There is no single right way to ask a spreadsheet for what you want, and that is precisely the problem. The inconsistency you are noticing between `SUMIF(S)` and `FILTER` or `SUMPRODUCT` is not a bug, nor is it a sign of sloppy engineering. It is a reflection of the fact that these functions were designed in different eras, by different teams, for different purposes, and then left to coexist without a unified standard. That historical drift is worth understanding because it directly affects how you write formulas, how you debug them, and how you teach others to work with data.

When `SUMIF` was introduced, it was a pragmatic addition to an already mature tool. Its syntax, `criteria_range, criteria`, mirrors the older database functions where you explicitly separate the range you are scanning from the condition you are applying. It is verbose, but it is also unambiguous. `FILTER`, on the other hand, came later, alongside the modern dynamic array engine. Its design philosophy is more expressive, allowing you to write `range = criteria` directly inside the function call. This is not a random choice. It enables the function to work with arrays and spilled results, where the relationship between the range and the condition is part of a larger expression, not a standalone argument. The two approaches are not competing on quality; they are simply products of their time.

What does this mean for you in practical terms? First, stop trying to force consistency where none exists. Accept that you will need to switch mental models depending on the function you are using. Second, use this as a reminder that spreadsheets are not a single, monolithic technology. They are a patchwork of features that have evolved over decades. The sooner you embrace that reality, the less frustration you will feel when a formula does not behave the way you expect. Instead of asking why the tool is not uniform, ask yourself what each function is trying to accomplish and how its syntax supports that goal.

The real lesson here is not about spreadsheet design. It is about the importance of knowing your tools deeply enough to adapt. When you encounter an inconsistency, do not assume it is a mistake. Treat it as a clue to the underlying logic, even if that logic is historical rather than intentional. By understanding why `SUMIF` and `FILTER` differ, you are not just memorizing syntax. You are building a mental map of how spreadsheet functionality has grown and changed. That knowledge will serve you far better than any single formula ever could. So the next time you find yourself confused by two functions asking for criteria in different ways, pause. Consider what era each one came from. Then write your formula with confidence, knowing you understand the reasoning behind the rules, even when the rules are not consistent.

From Microsoft Excel | Help & Support with your Formula, Macro, and VBA problems | A Reddit Community

I'm curious this morning why some functions, e.g. SUMIF(S), ask for criteria ranges and criteria in separate parameters, i.e. criteria range, criteria while others like FILTER or SUMPRODUCT ask for them both in the same parameter, i.e. criteria range = criteria. They both make sense, I'm just confused as to why they aren't consistent.

Read the original at Microsoft Excel | Help & Support with your Formula, Macro, and VBA problems | A Reddit Community