Follow these steps to fix the problem:
Symptom: EOS 7D won't turn on. Battery is charged. Tried several batteries. Battery door closed. CF card compartment door closed. Lithium battery fresh.
Diagnosis step one: Look at the top LCD. Is the battery symbol flashing? If yes, make sure your battery (including the Lithium battery) is charged, original, and new. If not (nothing at all showing on top LCD) proceed to step two.
Step two: Is the viewfinder unusually dark? Manual focussing seems off? If yes proceed to step three. If no: The camera receives power but will not turn on because either the main switch, the microswitch of the battery door, the microswitch of the CF card compartment, or several switches are not working. Check those switches. Use screwdrivers to check the operation of the microswitches. Clean the main switch with a strong air blower while switching back and forth (sand!).
Step three: If the viewfinder is unusually dark, the camera gets no power whatsoever (the 7D uses polarizers for the viewfinder displays, such as the focus points to show up - these require a tiny amount of energy and if the power is gone for more than 4 seconds, the viewfinder will go dark - to test what I mean, remove battery, wait 4 seconds and look for yourself). Clean the battery contacts in the battery compartment. In particular the silver one that is closer to the back of the camera. Use a screwdriver and slightly scratch any oxidations off the surface of the lowest, protruding part of the silver contact. After that clean with cotton swab and alcohol. Carefully clean the two copper contacts with cotton swabs and alcohol.
Step four: If it still won't work or fails again shortly afterwards, remove bottom plate and see if one or several screws of the bottom circuit board (towards the handgrip or towards the CF card door) fell out. Happened to me, too. Shaking the camera and tapping with a screwdriver can remove the screw from the innards... Mind the flash capacitor! If none of this helps, it might be the circuit board. Good luck!