VBA【PrintToFile】【PrToFileName】を解説【PrintOut】引数

Excelのマクロで印刷する時に使用するコード「PrintOut」の引数である
「PrintToFile」と「PrToFileName」について解説します。

「PrintToFile」と「PrToFileName」についてあまり解説されているサイトはありません
でしたが、気になったので調べてみました。

基本的な「PrintOut」の使い方や用途を知りたい方は、こちらをご覧ください。
「PrintOut」の引数についても解説しています。

◆「PrintToFile」と「PrToFileName」の説明

VBA「PrintOut」の引数の中にある
「PrintToFile」と「PrToFileName」に関しては、下記の表の意味となります。

PrintToFile 省略可能 True の場合、拡張子「.prn」ファイルの出力します。
引数「
PrToFileName」を省略した場合、保存先やファイル名を
指定するためにエクスプローラーの
標準ダイアログ ボックスを表示します。
PrToFileName 省略可能 引数「PrintTofile」が True に設定されている場合
この引数は、印刷するファイルの名前を指定することができます。
引数「PrintTofile」が True を指定されているのに
この引数を何も指定しなかった場合
標準ダイアログ ボックスを表示します。
名前 必須 説明
https://jovba.com/2023/07/03/print_sheet/

公式から「PrintOut」の引数説明を抜粋したものですが、意味わかりませんよね。

・「PrintToFile」の意味とは

「PrintToFile」の用途を要約すると、印刷データを保存するか設定できますよという事になります。

・「PrToFileName」の意味とは

「PrToFileName」の用途を要約すると、印刷データのファイル名を指定するという事になります。

印刷データってなに?って思いますよね。

次の項で説明しています。

◆「PrintToFile」と「PrToFileName」の使い方

・VBAサンプルコード

Sub PrintOut_PrintToFile_sample()
Sheets(1).PrintOut _
            PrintToFile:=True _
            , PrToFileName:="C:\Users\JoVBA\Desktop\vba_PrintData.prm"
End Sub

・サンプルコード説明

「PrintToFile」を「True」しないと、「PrToFileName」に値を指定しても意味はありません。

印刷データ「.prn」を保存したい時は、「PrintToFile」は、必ず「True」にしてください。

「PrintToFile」を「無指定」や「False」には、しないようにしてください。

「PrToFileName」関しては、「無指定」でも問題ありません。

保存先を指定したければ、保存パスとファイル名を「PrToFileName」に指定すればOKです。

「PrToFileName」が「無指定」の場合は、標準保存ダイアログが表示されるので
そちらで指定すればOKです。

・印刷データ「.prn」とは

印刷データ「.prn」と聞いても知らない方が多いですよね。

「.prn」とは、印刷するデータや印刷に関しての設定報、印刷先などの情報があるファイルです。

まず、使う事は、ないと思います。

・「PrToFileName」で保存できる拡張子

「PrToFileName」で保存できる拡張子は、標準で「.prn」ファイルですが
「.txt」、「.pdf」、「.xlsx」でも保存できます。

保存する拡張子は、自由ですが、「.pdf」、「.xlsx」等は開けません。

テキスト形式「.txt」で保存すると、中身は見えますが、ほぼ文字化けしています。


◆VBA印刷関連おすすめリンク

プリンターを指定して印刷

シートを指定して印刷

◆まとめ

印刷データ「.prn」ファイルなんて、人生で使用することはあるのだろうか・・・。

と思いました。

私が使うことがあれば、また発信させて頂きます。

印刷データ「.prn」ファイルをよく使う方は、どんな時に使うのか、コメントよろしくお願いします。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です