Se utilizzi le macro per stampare i fogli di lavoro, sai già che la macro può specificare la stampante effettiva a cui inviare l’output.

E se si desidera specificare anche un vassoio carta specifico da utilizzare su quella stampante? Sfortunatamente, questo diventa un po ‘un wicket appiccicoso.

Il problema è che quando si fa clic sul pulsante Opzioni nella finestra di dialogo Imposta pagina per impostare quale vassoio carta utilizzare, ciò che si vede è completamente sotto il controllo del driver della stampante, non sotto il controllo di Excel.

Cosa significa questo per voi? Significa che non ci sono comandi che puoi usare in una macro di Excel per specificare un vassoio della stampante. Tuttavia, ci sono alcune soluzioni alternative che puoi provare. La prima soluzione è definire semplicemente definizioni di stampante diverse in Windows, ognuna personalizzata per utilizzare un vassoio della stampante specifico. Segui questi passaggi generali:

  1. Determina il numero di vassoi della carta che desideri utilizzare sulla stampante.

  2. Definisci una nuova stampante per ogni vassoio carta che desideri utilizzare. Ad esempio, se si desidera utilizzare tre diversi vassoi carta, definire tre stampanti, ciascuna con un nome rappresentativo di un vassoio carta.

  3. Fare clic con il pulsante destro del mouse su una definizione di stampante e modificare le proprietà della stampante in modo che stampi nel vassoio della carta desiderato.

  4. Ripetere il passaggio 3 per ciascuna delle altre definizioni di stampante, assicurandosi di specificare diversi vassoi della carta per ciascuna.

A questo punto sono configurate più definizioni di stampante e ognuna stamperà su un vassoio carta diverso sulla stessa stampante. All’interno di Excel è possibile specificare la stampante desiderata, in una macro, in modo che la stampa vada alla definizione di stampante desiderata, e quindi al vassoio carta desiderato. L’unico inconveniente di questa soluzione, ovviamente, è che richiede un bel po ‘di lavoro di configurazione. Se lavori in un ufficio con 50 utenti, questo significa che dovrai assicurarti che tutti e 50 abbiano ciascuna stampante definita come descritto sopra.

Un’altra soluzione prevede l’utilizzo dell’istruzione SendKeys nella macro. È possibile trovare informazioni su SendKeys nella guida in linea di VBA disponibile con Excel, ma ciò che fondamentalmente fa è riempire il buffer della tastiera con una serie di pressioni di tasti, proprio come verrebbero digitate dall’utente. Pertanto, è possibile teoricamente impostare la macro per emulare le pressioni di tasti che si seguiranno per aprire la finestra di dialogo Imposta pagina, fare clic su Opzioni e selezionare un vassoio della stampante diverso.

Tuttavia, esiste un potenziale problema con SendKeys ed è di grandi dimensioni. Può essere inaffidabile perché non è possibile garantire che le sequenze di tasti vadano effettivamente dove si desidera. Su un sistema operativo multi-thread (come Windows), qualche altro processo potrebbe intervenire e far fallire i comandi. Inoltre, se SendKeys funziona sul tuo computer, potrebbe non funzionare sul computer di qualcun altro a meno che non abbia la stessa versione di Excel, la stessa stampante e la stessa versione del driver della stampante.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (7010) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: