Preheat the oven to 350 degrees. In a medium bowl mix together butter, mayonnaise, Dijon mustard, onion, and poppy seeds. Spread the mixture evenly onto the bottom of the top half of each bun. Layer all of the bottom halves of the bun evenly with Swiss cheese and ham. Place the top half of the bun onto each sandwich.
Wrap each sandwich with aluminum foil. Place into the oven and bake at 350 degrees for 20 minutes or until the cheese has melted and the sandwiches are hot.