I started VBA with Walkenbach's "Excel 2000 Power Programming With VBA" and chapter 27 "Manipulating Visual Basic Components" has code for this sort of thing. I didn't find examples on line when I made a quick search just now.
However, I recall that earlier in the book is another idea. Something like create the user form with the full complement of buttons you require and then expose only the correct number for each situation. Either by adjusting the height of the user form or, and I might be imagining this, changing the visibility of some controls.
HTH. Regards, Fazza