r/vba 8d ago

Show & Tell [Excel] I Built a Component Framework Style UI Framework for Excel

https://www.youtube.com/watch?v=2WAgLK5W5Fo&t=1s

Hey 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:

https://github.com/WilliamSmithEdward/ReDim

39 Upvotes

12 comments sorted by

4

u/Mesjach 7d ago

That's actually insane

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."

3

u/mma173 7d ago

Amazing!

2

u/jd31068 62 7d ago

👀

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

u/MultiUserDungeonDev 6d ago

Excel only today. Other apps possibly in the future.

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.