I think that the Speed Dial type for a VMPK could work the way you want. It will depend on the specifics of the Feature Code. If a Feature Code will prompt you for the missing data (such as the extension number), then you put that Feature Code onto a VMPK and then while it is prompting you for something you can press another VMPK Speed Dial type button to send the additional data. It may not function exactly like the Yealink you mentioned, but it may provide the functionality that you are looking for.
Back when I was doing my initial configuration testing, I did something like this with Voicemail. I worked with the *98 which allows you to log in to the Voicemail of a different extension. The flow of *98 is that it prompts you for the extension, and then it prompts you for the password followed by #. So I programmed a VMPK with *98, and then typed in the rest. Then I programmed a VMPK with *98,1234 which would just prompt me to enter the password for ext 1234. I also programmed a VMPK with *98,1234,5678# which did not prompt me for anything and took me right into that Voicemail (leaving off the final # was quite frustrating as it did not prompt for anything). The comma character provides a delay, so you can experiment with that to find what works best.