Hi Mohamed,
I assume you are using spreadsheets to track the utilized and remaining hours for your membership customers. As you would be creating a new SO for others who don't have an active membership (ongoing order)
I would believe the ideal would have been to create a project task and track time on that task, however this might not be available in the community edition.
One idea could be to create the membership product as a "consumable" with UOM being time (hours or days or define a new unit based on time), and the invoicing policy either ordered or delivered qty, depending on your membership terms. (Ordered qty if unutilized hours lapse).
While creating a sale order for membership, you can set the delivery date field to reflect the "utilize by" date as defined in your membership terms. On confirming the sale order, a delivery order is created for time units sold.
You can mark off done units on the delivery order each time the co-work space is used and create a 'back-order' for the remaining hours. At any point the transfers in 'ready' stage would be for your active memberships reflecting their remaining hours. You can cancel the delivery orders which have passed deadline, if the unutilized hours expire.
Hope this helps!