The only time we really see the tanks in action is The Battle Of Yonkers. And there it's pretty well explained by the narrator (Todd the ex-marine, I think): They're firing a dozen tank shells into a swarming mass of literally tens of thousands of zombies. He specifically says that where the shells hit you saw zombies blasted to shreds - I think he compares it to a woodchipper at one point - but then he notes that pretty soon the tanks were out of ammunition and there were another ten thousand zombies right behind the decimated first ranks, and another hundred thousand behind them.
When the book says that tanks "did nothing" it means that they did not effect the overall battle in any meaningful way. Part of that is the lack of ammunition, and part of it is that tanks firing shells are not designed to combat soft targets, particularly en masse. The shells devestated those zombies they actually hit; it's just that the "splash damage" you expect from an explosion has a very, very reduced effect on zombies, because there's nothing there that can work on them.
As for the bombs, again, the narrator notes that the bombs did really well, and expresses utter bewilderment and frustration that there was not another bombing run after the first. So that's lampshaded. And the guns, it was noted (accurately) that the vast, vast majority of shots fired in war do not score a kill, and when you're crippled for resources to the point where bullets are very hard to come by, you need to make every shot count. A single-shot rifle that can be fired once every few seconds achieves that.
I'm not saying all of Brooks' logic plays out 100%, but he does at least go for a reasonable justification as to why it might work, given the circumstances he describes.