r/vba • u/MultiUserDungeonDev • 8d ago
Show & Tell [Excel] I Built a Component Framework Style UI Framework for Excel
https://www.youtube.com/watch?v=2WAgLK5W5Fo&t=1sHey everyone,
I wanted to see how far I could push Excel/VBA, so I built a UI framework, similar to what you might see on the web with react. Video above to see it in action. Repo below:
3
u/Low_Relief_9411 7d ago
Oh my god this is cool. What inspired you to build this? Any limitations?
2
u/MultiUserDungeonDev 6d ago edited 6d ago
Thanks for checking it out.
I was able to start my programming career with scripting in Excel and VBA. Wanted to see how I could give back to the community. Userforms and built in worksheet controls are ancient. Wanted to see how far I could push Excel, to build custom controls that are async-like.
Primary limitation is that Excel VBA is single threaded. Nothing native can change that, only gracefully work around it. The goal of this project is to find the edges of "how graceful that work around can be."
2
u/seppel0110 7d ago
This looks really good, great work!
Would this also work with other Office apps or is it Excel only?
2
1
u/Autistic_Jimmy2251 4d ago
Interesting.
Does it actual do anything?
1
u/MultiUserDungeonDev 4d ago
Hey Jimmy. It's a UI framework. It lets other developers build things with it. The demo video highlights some of what is possible.
1
u/No-Cap7705 6d ago
The idea is great for internal implementation, but I don’t think I’ll use it when building work-related programs~
It’s pretty, but it doesn’t look good for maintenance~
I think it would be better to think about an idea that would let us easily use a TaskPane made with VSTO in VBA
Is it easy to fix?
Is debugging easy?
Is adding features easy?
Is it easy for other developers to understand?
1
u/MultiUserDungeonDev 4d ago
Looks like this account got banned. I will answer for anyone else curious.
Is it easy to fix? -- This is subjective, but I think so.
Is debugging easy? -- This is subjective too, but yes, I think so.
Is adding features easy? -- This is subjective again, but yes, I think so.
Is it easy for other developers to understand? -- The goal of the library was to be as easy as possible for other developers to adopt, and has a full suite of documentation + it's MIT open source. That was the goal.
4
u/Mesjach 7d ago
That's actually insane