This same thing happened to me, and while this isn’t likely to be there cause of every instance of this problem…
It turned out that not all of the pins from the Ramps shield were properly inserted into the headers on the Arduino. Specifically, the pins went behind the header near the reset button. It was almost an invisible problem until I started peaking with a flashlight from the other side looking to see if something was shorted out.
I bent the pins, and now the shield connects much more easily and the 12V powers the Mega and the reset button works now, too!
If this doesn’t help you, maybe it’ll help someone else.