WordからVBAを使用してドキュメントを印刷する場合、ドキュメントがシートを取得することになっているプリンタトレイを選択できます。 Excelでは、WordのようにFirstPageTrayまたはOtherPagesTrayのプロパティを設定する機会がありません。 SendKeysを使用して簡単なソリューションを作成することができます。

次に、2つのマクロの例を示します。

Sub ChangeTray()

' selects the manual page tray without printing

Application.SendKeys "%fu%e{TAB}{DOWN}{DOWN}{TAB}m~{ESC}", True

End Sub

Sub ChangeTrayAndPrint()

' selects the manual page tray and prints the selected sheet(s)

Application.SendKeys "%fu%e{TAB}{DOWN}{DOWN}{TAB}m~~", True

End Sub

上記のマクロの例は、ノルウェー語版のExcel97とCanonバブルジェットプリンターで動作します。

SendKeysを使用して転送するテキスト文字列の内容は、Excelのバージョンとインストールされているプリンターによって、コンピューターごとに異なる場合があります。上記のマクロを編集して、コンピューター上で機能させる必要があります。

VBAの組み込みヘルプに特殊機能キーを置き換える特殊文字の完全なリストがあります。モジュールにSendKeysと入力し、単語を選択してF1キーを押します。