I've had a quick look and I've come up with a couple of things. I get a "Data Type Mismatch in Criteria Expression" when I open your form. I think it's to do with the subform as the main form opens but the subform doesn't.
Also, you have a different table for each type of product i.e. drinks, sides desserts etc. All these tables contain the same information though i.e. product description, product price etc. Is there a reason these need to be in separate tables? I think if I was doing this project I would put all the products in a products table. You can add a field to the table to hold which type of product it is. That way, in the event of a new type of product coming along (perhaps not so relevant for a restaurant menu but could be for a different situation) you can simply add the new products to an existing table, but with a different value in the product type field, as opposed to having to create a whole new table to hold your new products and all the associated work involved in that.