The real problem here isn't the data entry. It's that Excel's calculation engine treats every keystroke as if it might be the one that matters. When a VSTACK with a FILTER is watching four sheets, it reevaluates on every cell change, even when the unique identifier hasn't been assigned yet. That's the core inefficiency, and it's why the workbook slows to a crawl in a multi-author environment. The user's instinct to count identifiers first and gate the VSTACK on that count is clever, but it's also a workaround for a deeper design flaw: we're asking a dynamic array to be patient when the tool was built to be reactive.
What this user is really describing is a state-management problem. The workbook has two distinct states: rows that are still being entered and rows that are complete. Excel doesn't know the difference until the identifier appears, so it recalculates everything just in case. The proposed solution, counting assigned identifiers and conditioning the VSTACK to stand down until that count changes, is practical and worth testing. It won't eliminate the initial calculation, but it can stop the constant re-evaluation during the five or six cell entries that precede completion. That's a meaningful win for a shared workbook where latency compounds across authors.
There's a broader lesson here for anyone using dynamic arrays in shared files. The power of VSTACK and FILTER is also their weakness: they are aggressively eager. They assume every change is final, so they punish partial input. The fix isn't to abandon these functions. It's to introduce a gating mechanism, something that tells Excel, "This is not ready yet." A simple counter column, a helper cell that tracks the max identifier, or a manual refresh trigger can turn a sluggish workbook into a responsive one. The user's "STFU" instinct is right; they just need a structured way to say it.
The fact that Power Query is off the table makes this harder, but not impossible. The suggestion to use a count-based condition is a solid start, and it's worth iterating on. Try a separate cell that counts all unique identifiers across the four sheets, then have the VSTACK reference that cell as a logical gate. When the count doesn't change, the formula won't recalculate. When an entry is finally completed and the identifier lands, the count ticks up, and the stack updates once. That's the kind of targeted thinking that turns a frustrating limitation into a manageable constraint. It won't fix every slow workbook, but it will fix this one.