Neither wire cut nor split nor boolean difference works


For an assignment for school I need to 3D-print an object, but my balustrade is to long for the 3D-printer we have here. Therefor I need to cut my balustrade in 2, but somehow neither the command wire cut nor (boolean) split nor boolean difference works.

if you explode that lot and try split again it works almost completely, but as indicated on the image below this object consist of a few surfaces thin as curves which may fall out of the tolerance. if you clean away the split surfaces and leave those which did not split and split manually again it seems to work. so you may have to do it bit by bit and join one side back together again. maybe a MergeAllFaces could help to clean the mess from the previous boolean unions a bit up but it may take a while, on my old computer i gave up after more than 5 minutes if your computer is a bit newer the waiting may be worth it.