There's a better way to organize your financial workbooks, and it starts with moving beyond prefix-based macros. The approach you've built works, but it's brittle. It forces your tab names to carry structural meaning, which breaks down as soon as you hit character limits or need to regroup tabs without renaming everything. Your instinct to move toward a table-driven system is the right one, and it's more accessible than you think.
What you're describing is a simple mapping layer. Instead of hardcoding group logic into VBA, you let a worksheet hold the relationship between tab names and group numbers. A table with columns for "Tab Name," "Group Number," and maybe "Visible" becomes your single source of truth. Then a button triggers one macro that reads that table, loops through your sheets, and hides or unhides based on what the table says. No prefixes required. No renaming. Just a clean, editable list that anyone on your team can update without touching code.
The practical path forward is to start small. Build a sheet named "Control" or "Groups." List your tabs manually in one column and assign group numbers in the next. Write one macro that loops through that range and sets `ws.Visible` based on the group number you pass to it. Assign separate buttons for each group, or better yet, use a cell where you type the group number and one button that toggles visibility. That single macro replaces all your per-prefix subs. It's not a massive rewrite. It's a shift in where the logic lives, from the naming convention to the data itself.
The real win here is maintenance. When you add a fund next quarter, you don't need to write a new macro or worry about whether the tab name fits a pattern. You just add a row to your control table. When someone wants to see only the feeder funds, they click one button. The workbook becomes something you can hand off without a training manual. That's the transformation worth pursuing. Start with the table, build the one macro, and retire the prefix system. Your future self will thank you.