I've never been on B12 injections, but my dad and a number of others i know have had very low B12 and found the sublingual B12's to be excellent.
As your B12 is low, do you also check your ferritin (iron stores) and Vitamin D? Often these are all low if B12 is low.
I do know a number of people on the Anemia section of the Healthboard have had B12 issues and there are some good posts which you might find an informative read to help you out with B12 and what works.
Hope you feel better soon