Ricky ti ha suggerito di impostare manualmente, dal Pannello di Controllo, Stampanti e Scanner, la proprietà della stampante che usi per impostarne l’Orientamento Orizzontale. Credo che così funzionerà (fintanto che qualcun altro cambierà, anche da programma, questa impostazione).
Per farlo da programma bisognerebbe invece usare le API di windows, ma io sono un emerito ignorante e non ho trovato nulla che potessi copiare e suggerire.
Una possibile alternativa, se ti accontenti, potrebbe essere di rimpicciolire la userform prima di stamparla (per farla stare sul foglio stretto):
- Codice: Seleziona tutto
 Private Sub UserForm_Click()
    'scegli printer
    SelPrint = Application.Dialogs(xlDialogPrinterSetup).Show
    If SelPrint = False Then
        MsgBox "Stampa Cancellata"
        Exit Sub
    End If
Me.Zoom = 50
Application.Wait (Now + TimeValue("0:00:03"))
Me.PrintForm
Application.Wait (Now + TimeValue("0:00:03"))
Me.Zoom = 100
End Sub
 La parte di scelta della stampante e’ opzionale; la puoi eliminare se non ti serve (fino a End If)
Le due Wait non so se sono necessarie, prova anche ad eliminarle, se la provi.