I recommend only taking a B12 supplement if you have tested positive for a deficiency.
The only accurate test that will indicate a B12 deficiency is a urinary MMA test. A B12 in-serum blood test is inaccurate and the blood homocysteine test is inaccurate as well. Many doctors have no idea what a MMA test is and will refuse to order one for you. They only took one nutrition course in med school but still think they know more than you. Insist on the uMMA test. The in-serum test indicates inactive B12 analogues as well as active B12, and the homocysteine test can indicate issues other than a B12 deficiency, so both are completely useless.
If you decide to take a B12 supplement after finding out that you have a deficiency, you should only take a methylcobalamin or hydroxocobalamin supplement. These should be in either an injection form or sublingual (dissolves in the mouth.) Do not under any circumstance take a cyanocobalamin supplement as this is a toxic, cheap, long-shelf life form of B12 that doesn't do you any good and also contains cyanide.
Be aware that this is not a vegan problem. A recent Tufts university study showed that nearly 40% of the U.S. adult population was deficient in vitamin B12 - a population that consists mainly of meat-eaters.
For further reading, check out the book "Could it Be B12?"
Oh I'll definately stop taking the pills then!