My iron is 22 b12 is 100 vitd 27 feeling very weak dizziness fatigue taking supplement orally how long will it take to feel better?

Depends. You should have his doctor evaluate why his B12 level is so low. Is he a strict vegetarian? Or he may have a condition called pernicious anemia in which he is unable to make B12. He may feel better with getting B12 injections for a while. 5000iu of vitamin D everyday should help improve his vitamin D levels. Eating more fish can also help improve his vitamin D and B12 levels. Monitor levels.
1-3 weeks. Your numbers are quite low. My goodness, how did they get that low? Are you not eating properly or the proper foods? Are you a college student living at a Frat House? Those numbers are quite low...especially your B12...I haven't a number that low that I can recall. Please get some help with your nutrition. Am available for help by appointment: www.healthtap.com/drsaghafi Key Code: PDXFNR.