Just run a query against datearrive and datedepart and nopersons. If the date that you want to book has more than 43 then you can you can not book a room.
Another way would be to have a separate table with with datestay + # people and then each time someone is staying update the table with # people and date.
You can then run a query to count the number of people for that date. Once they have left delete the record.
The only problem whit this is access will get larger with all the deleting going on. If it is access you're using