Remove the ignition switch electrical part. Drown it in switch cleaner and work the switch through its range. Wash again and dry. Refit. Should fix it. Full reasons on other of my posts
Good - Fast - Cheap: Pick any two.
E23 735i; E32 735iL (X 2 - 1 Alpine White and 1 Glacier Blue); E34 535i; E38 735iL; R50 Cooper; R55 Cooper Clubman.
E21 318i; E30 318i; E32 735iL; E34 535i; E38 730iL; E53 4.4i