Create structured HTML table data as component for dynamic zones

We have many sites where the client uses html tables in their page content. Ideally i want to create a component that they can add and then somehow they select how many columns they want and can add many rows. I cant find an easy way to do this as a component so it can be pulled in as part of a dynamic zone.

Anyone have any ideas on this as it just doesn’t feel like its generally easy to do?

(I don’t want to create the table manually in raw html in an editor like CKEditor either as this leads to issues with non coding clients and things tend to break. It needs to be in a structured way)