Ok, I read a very interesting website that talked about how we absorb B-12.
Essentially, our recommended daily intake is 3.5mcg. Most foods that are good sources of B-12 have this amount in one or two servings.
There are two methods the body utilizes to digest/absorb B-12. One is the normal way, where "intrinsic factor" (a chemical created in the stomach) attaches to B-12, and ushers the B-12 out of the small intestine, into the blood stream.
The second way is a "passive system", which doesn't require intrinsic factor. B-12 just slips out into the bloodstream by itself. BUT, this passive system is VERY inefficient, and so only 1/100th of the B-12 makes it into the blood.
We sleevers, we had the portion of the stomach removed that makes intrinsic factor. So the first method doesn't work anymore. The second method works, but look at the numbers. If a serving of B-12 food has 3.5mcg, but you only absorb 100th of it, then you'd have to eat 100 servings of that food to meet your daily goal.
Excess B-12 is stored in the liver, and if your liver is full, it can provide your B-12 needs for 5 or 10 years. Since your blood work is showing dropping levels, it may mean your liver isn't full anymore, so the supplements become more important.
There is no proof the patch works, so don't count that in your figuring out how much B-12 your body is getting. Your pill has 1000mcg, so you are absorbing about 10mcg a day. But, that's statistically, and we don't know if the particular supplement you take is as easily absorbed as the ones used in the studies. So it's possible, you aren't even getting 10mcg.
The shot, however, is the surefire way that you are getting this supplement, since it bypasses the digestive system completely. If your liver is running low, it could take a while before the shot fills it back up enough to reflect in a much higher number in your blood. Since your blood value did go up, the shot is definitely doing its job.
http://www.b12-vitamin.com/intrinsic-factor/
Here's the website: