Can the Arduino do two things at one time?

If you break the LedOn program into two functions - one which reads the switch and stores the value in a global variable (let's call it switchPos) and the other which switches the light depending on the value of switchPos then all you need to do is get your Vibration code to set the value of switchPos.

...R