Not exactly sure I understand your post but ideally what you need to do is measure voltage on battery with just ignition on (engine not running) and make sure it's above 12.5V. Next, check voltage on starter motor when trying to start, it should be over 10V.
If both OK, could be either ignition switch problem or sticking starter solenoid. Give the starter a tap with a wooden mallet and see if it frees to confirm the latter. Otherwise read this... https://z4-forum.com/forum/viewtopic.php?f=3&t=101041&hilit=switch
If you have had battery / alternator problems in the past though it could just be a case of poor condition battery in which case new battery would be advisable. If you can check voltage on battery with engine running it should be above 13.8V @ 1,500rpm.