C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

ExcelのPrintCommunication /furu (20/09/11(Fri) 11:36) #95737
Re[1]: ExcelのPrintCommunication /魔界の仮面弁士 (20/09/11(Fri) 12:10) #95739
│└ Re[2]: ExcelのPrintCommunication /furu (20/09/12(Sat) 23:19) #95743
Re[1]: ExcelのPrintCommunication /魔界の仮面弁士 (20/09/11(Fri) 12:15) #95740
│└ Re[2]: ExcelのPrintCommunication /furu (20/09/11(Fri) 14:51) #95741
Re[1]: ExcelのPrintCommunication /furu (20/09/11(Fri) 15:43) #95742


親記事 / ▼[ 95739 ] ▼[ 95740 ] ▼[ 95742 ]
■95737 / 親階層)  ExcelのPrintCommunication
□投稿者/ furu (70回)-(2020/09/11(Fri) 11:36:30)

分類:[Microsoft Office 全般] 

C#7.4 Office365

C#からCOMでExcelを操作しています。

ファイルを書き換えているのですが
ヘッダ−(Worksheet.PageSetup.CenterHeader)の設定に
2秒弱かかってしまっています。

プリンタとの通信があるから遅いということがわかり
Application.PrintCommunicationをfalseにし
ヘッダ設定してから
trueに戻しました。

しかし、trueに戻すのに2秒弱かかっています。
プリンタとのおしゃべりを再開したんでしょう。

ファイル作成で印刷しないなら
PrintCommunicationをfalseのまま
Excel.ApplicationをExitして問題ないですか?

印刷もする場合
PrintCommunicationをfalseのままだと
どんな影響がありますか?
[ □ Tree ] 返信 編集キー/

▲[ 95737 ] / ▼[ 95743 ]
■95739 / 1階層)  Re[1]: ExcelのPrintCommunication
□投稿者/ 魔界の仮面弁士 (2834回)-(2020/09/11(Fri) 12:10:28)
No95737 (furu さん) に返信
> ヘッダ−(Worksheet.PageSetup.CenterHeader)の設定に
> 2秒弱かかってしまっています。

PAGE.SETUP(Header) マクロを使った場合も、同じぐらいの時間がかかりますか?
https://vbabeginner.net/vba%E3%81%A7%E5%8D%B0%E5%88%B7%E8%A8%AD%E5%AE%9A%E3%82%92%E9%AB%98%E9%80%9F%E3%81%AB%E8%A1%8C%E3%81%86/
[ 親 95737 / □ Tree ] 返信 編集キー/

▲[ 95739 ] / 返信無し
■95743 / 2階層)  Re[2]: ExcelのPrintCommunication
□投稿者/ furu (73回)-(2020/09/12(Sat) 23:19:44)
No95739 (魔界の仮面弁士 さん) に返信
> PAGE.SETUP(Header) マクロを使った場合も、同じぐらいの時間がかかりますか?
> https://vbabeginner.net/vba%E3%81%A7%E5%8D%B0%E5%88%B7%E8%A8%AD%E5%AE%9A%E3%82%92%E9%AB%98%E9%80%9F%E3%81%AB%E8%A1%8C%E3%81%86/

PAGE.SETUP(Header) マクロでも同じ時間がかかりました。

PAGE.SETUPもプリンターとの通信は行われるようです。

LeftHeaderとRightHeaderを変更するというように
複数のプロパティを設定する場合は早くなります。

ExecuteExcel4Macro("PAGE.SETUP(\"&L&\"\"MS Pゴシック,太字\"\"&14&KFF0000※テスト&C1行目\n2行目&R右\")")

[ 親 95737 / □ Tree ] 返信 編集キー/

▲[ 95737 ] / ▼[ 95741 ]
■95740 / 1階層)  Re[1]: ExcelのPrintCommunication
□投稿者/ 魔界の仮面弁士 (2835回)-(2020/09/11(Fri) 12:15:55)
No95737 (furu さん) に返信
> プリンタとの通信があるから遅いということがわかり
> Application.PrintCommunicationをfalseにし
> ヘッダ設定してから
> trueに戻しました。

Excel バージョンによっては、True に戻しても正しく印刷されない事があるそうです。
https://answers.microsoft.com/ja-jp/office/forum/office_2010-excel/excel-2010%E3%81%A7/3692438e-2e56-4413-8933-3455ea2bec5e


また、プリンターとの通信時間はプリンタードライバーにも依存してきます。

OS 付属の汎用ドライバーと、メーカー提供の専用ドライバー、あるいは PDF プリンターなどで
試してみると、実行時間が大きく変わることがありましたので、もしも高速なドライバーがあれば、
一時的に切り替えてみるのも手かもしれません。
[ 親 95737 / □ Tree ] 返信 編集キー/

▲[ 95740 ] / 返信無し
■95741 / 2階層)  Re[2]: ExcelのPrintCommunication
□投稿者/ furu (71回)-(2020/09/11(Fri) 14:51:47)
No95739 (魔界の仮面弁士 さん) に返信
いろいろありがとうございます。


> PAGE.SETUP(Header) マクロを使った場合も、同じぐらいの時間がかかりますか?
時間があれば試させていただきます。

No95740 (魔界の仮面弁士 さん) に返信
> Excel バージョンによっては、True に戻しても正しく印刷されない事があるそうです。
> https://answers.microsoft.com/ja-jp/office/forum/office_2010-excel/excel-2010%E3%81%A7/3692438e-2e56-4413-8933-3455ea2bec5e

Excel2010で追加されたプロパティなので
Excel2010での不具合はしょうがないですね。
開発も使用もOffice365なので不具合は解消されていると信じます。

> また、プリンターとの通信時間はプリンタードライバーにも依存してきます。
使うのは違う会社だったり、プリンタサーバーも遠くだったりするので
こればっかりはどうしようもないです。
[ 親 95737 / □ Tree ] 返信 編集キー/

▲[ 95737 ] / 返信無し
■95742 / 1階層)  Re[1]: ExcelのPrintCommunication
□投稿者/ furu (72回)-(2020/09/11(Fri) 15:43:02)
> ファイル作成で印刷しないなら
> PrintCommunicationをfalseのまま
> Excel.ApplicationをExitして問題ないですか?
PrintCommunicationをfalseのまま
Workbook.Saveすると
ヘッダー変更されていませんでした。

PrintCommunicationはtrueに戻さないと駄目です。

PrintCommunicationを使用して早くなるのは
複数項目変更の場合だけですね。
[ 親 95737 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -