Vitamin B12 can be taken every day on prescription, and the best time to take it would be in the morning on an empty stomach. Vitamin B12 is an energizing supplement, and taking it at night can affect your sleep.