I do slightly disagree about not taking iron if you are slightly low- ask also to measure serum ferritin level, this identifies if you are on the edge of becoming anaemic - should be average of 42 mine was 12 and GP will class you as anaemic at 10- at 12 i got all the symptoms of anaemia but wasnt classed as anaemic yet. Obviously too much iron is not good either- but this has to be at very high levels, so just explore that with the GP at least
if there is nothing else it might bebecause it made a huge difference to my energy levels, also B vits are great for energy, hope you find a solution soon!